#reactjs #dependencies
Вопрос:
Ошибка появляется, когда я добавил контактную форму с помощью «EmailJS». Я вижу, что зависимости от Package.json выглядят нормально, но там написано, что они не определены.
"react": "^17.0.2",
"react-dom": "^17.0.2",
Я изменил формат импорта следующим образом, как было рекомендовано,
import React from 'react';
import ReactDOM from 'react-dom';
также переустановил его, но, тем не менее, ошибка не исправлена.
ReferenceError: React is not defined
at Object.children (C:UsersHanDesktopandamilo24-shopifystorehelp.nextserverpagesindex.js:3460:62)
at BaseAccordion.render (C:UsersHanDesktopandamilo24-shopifystorehelp.nextserverpagesindex.js:3595:23)
at processChild (C:UsersHanDesktopandamilo24-shopifystorehelpnode_modulesreact-domcjsreact-dom-server.node.development.js:3450:18)
at resolve (C:UsersHanDesktopandamilo24-shopifystorehelpnode_modulesreact-domcjsreact-dom-server.node.development.js:3270:5)
at ReactDOMServerRenderer.render (C:UsersHanDesktopandamilo24-shopifystorehelpnode_modulesreact-domcjsreact-dom-server.node.development.js:3753:22)
at ReactDOMServerRenderer.read (C:UsersHanDesktopandamilo24-shopifystorehelpnode_modulesreact-domcjsreact-dom-server.node.development.js:3690:29)
at renderToString (C:UsersHanDesktopandamilo24-shopifystorehelpnode_modulesreact-domcjsreact-dom-server.node.development.js:4298:27)
at Object.renderPage (C:UsersHanDesktopandamilo24-shopifystorehelpnode_modulesnextdistnext-serverserverrender.js:54:854)
at Function.getInitialProps (C:UsersHanDesktopandamilo24-shopifystorehelp.nextserverpages_document.js:791:19)
at Function.getInitialProps (C:UsersHanDesktopandamilo24-shopifystorehelp.nextserverpages_document.js:1373:85)
at loadGetInitialProps (C:UsersHanDesktopandamilo24-shopifystorehelpnode_modulesnextdistnext-serverlibutils.js:5:101)
at renderToHTML (C:UsersHanDesktopandamilo24-shopifystorehelpnode_modulesnextdistnext-serverserverrender.js:54:1145)
at runMicrotasks (<anonymous>)
at processTicksAndRejections (internal/process/task_queues.js:95:5)
at async C:UsersHanDesktopandamilo24-shopifystorehelpnode_modulesnextdistnext-serverservernext-server.js:112:97
at async C:UsersHanDesktopandamilo24-shopifystorehelpnode_modulesnextdistnext-serverservernext-server.js:105:142
кто-нибудь может посоветовать, чего мне здесь не хватает?
Ответ №1:
сначала проверьте, используете ли вы babel и реагируете 17. Добавьте «время выполнения» : «автоматически» в конфигурацию.
{
"presets": ["@babel/preset-env", ["@babel/preset-react", {
"runtime": "automatic"
}]]
}
если нет, проверьте файлы, которые действительно изменяются при добавлении контактной формы. В основном в конфигурационных файлах, таких как babel или webpack.
если вы используете webpack и получили такую конфигурацию в webpack.config.json
externals: {
'react': 'React'
},
снимите его
Если все остальное не удастся, помните, что react не входит в комплект, вместо этого может быть вызов window.react
, поэтому просто добавьте
import React from 'react';
import ReactDOM from 'react-dom';
window.React = React
Комментарии:
1. Спасибо за комментарий. Я удалил node_modules и переустановил его, и он исправлен.