Если у меня есть блок Gutenberg
, для которого я собираю строку, которую вводит пользователь, но я хочу использовать эту строку в приложении react
, отображаемом во внешнем интерфейсе, как я могу передать эту строку?
Определение блока Гутенберга
save: ({ attributes }) => {
window.thisVariableWillNotBeSeen = attributes
console.log(window) // here `thisVariableWillNotBeSeen` is seen, in the frontend it is not
return (
<div id="test_react"></div>
)
},
Затем скрипт поставлен в очередь как таковой (внутри плагина)
add_action('wp_enqueue_scripts', 'react_enqueue');
function react_enqueue()
{
$asset_file = include(plugin_dir_path(__FILE__) . 'build/test.asset.php');
wp_enqueue_script(
'myBlock',
plugins_url('build/test.js', __FILE__),
$asset_file['dependencies'],
$asset_file['version'],
true
);
}
И scr/test.js
const { render } = wp.element
import { Test} from './components/test'
render(<Test />, document.getElementById(`test_react`))
В export const Test
, если я вижу console.log(window)
, я не вижу глобальную переменную, которую я добавил в функцию save
до
Как я мог это сделать?