Блоки Гутенберга - обработка данных сервера внутри блока - PullRequest
0 голосов
/ 14 сентября 2018

У меня есть блок, который отображает заголовки всех существующих сообщений в <Modal/>.Я получаю его с сервера, используя <ServerSideRender/> (который возвращает обычный HTML).Я хочу иметь возможность выбрать один из заголовков (в идеале сохранить его в атрибуте postTitle) и отобразить его в блоке.

attributes: {
    postTitle: {
        type: 'string'
    }
},

edit(props) {
    const { attributes } = props;
    const { postTitle } = props.attributes;

    const MyModal = withState( {
        isOpen: false,
    } )
    ( ( { isOpen, setState } ) => (
        <div>
            <Button isDefault onClick={ () => setState( { isOpen: true } ) }>Choose</Button>
            { isOpen ?
                <Modal onRequestClose={ () => setState( { isOpen: false } ) }>
                        <ServerSideRender
                            block="my-blocks/wordpress-title"
                            attributes={attributes}
                        />
                </Modal>
                : null }
        </div>
    ) );

    return ([
        <InspectorControls>
            <div>
                <strong>Choose Wordpress title:</strong>
                <MyModal/>
            </div>
        </InspectorControls>,
    ]);
},

Есть ли какой-либо разумный способ получения данных с сервера,чтобы можно было работать с ним в блоке?

...