При использовании инструментов сборки Create React App я пытаюсь визуализировать компонент React с отложенным способом (после того, как другой Javascript уже завершил работу), но я не могу понять, как получить доступ к React или ReactDOM извнескомпилированного контекста ES6 / Babel, поскольку я хотел бы инициировать вызовы рендеринга вне ES6 и конвейера Create React App.
Очевидно, что контекст «Create React App» использует ES6 и не настраивает глобальныйПеременные, как в случае с тэгом <script>
, традиционно, поэтому вызов ReactDOM.render
или React.createElement
приводит к Uncaught ReferenceError: ReactDom is not defined
.
. Как настроить файл index.html, созданный в Create React App, в public
чтобы получить доступ к API верхнего уровня?
Чтобы продемонстрировать эту ошибку, я разветвил базовый пример Codeandbox.io приложения Create React App и добавил строку в index.html внизу тела:
<script>
ReactDom.render(
React.createElement(App),
document.getElementById("root")
);
</script>
Если вы загрузите этот пример, вы увидите Uncaught ReferenceError: ReactDom is not defined
, как и ожидалось
https://codesandbox.io/s/distracted-river-1ei94