我刚刚推出了一个新的下一个JS应用程序与下一个12。
在浏览器中加载的所有页面上都会出现此错误:
警告:在React 18中不再支持ReactDOM.render。请改用createRoot。在您切换到新的API之前,您的应用程序将表现得好像它正在运行Reactive17。
下一个js的ReactDom.render在引擎盖下面,我如何解决这个错误?
发布于 2022-05-05 03:05:25
对我来说,这的确是脉轮。您需要为NextJS安装最新的Chakra
npm i @chakra-ui/react@2.0.0-next.3
发布于 2022-05-06 09:24:32
发布于 2022-05-03 15:36:27
实际上我也有同样的问题/警告,
在我的例子中,我用上下文api在我的next.js应用程序中使用了“react”,并且经过了大量的搜索.
我发现问题来自:
toast.configure() method
而且我在我的上下文api模块中使用它,并且我还发现正式的“react toastify”文档在与上下文api一起使用时,讨论了与此方法相关的一些问题,并且将该方法从新版本中删除。
以下是官方文档的链接:
https://fkhadra.github.io/react-toastify/migration-v9#toastconfigure-removal
最后,我使用以下步骤解决了问题:
1-从我的上下文api模块中删除toast.configure()。
2-我没有使用toast.configure(),而是在"_app“模块中使用了"ToastContainer”组件“只需定义它,吐司就会正常工作”,这是我的"_app.js模块“:
import { useEffect } from 'react';
import '../styles/globals.css'
import 'bootstrap/dist/css/bootstrap.css';
import Nav from '../components/nav';
import Footer from '../components/footer';
import { AuthProvider } from '../my_utils/myContext/authcontext';
import { ToastContainer } from 'react-toastify';
function MyApp({ Component, pageProps }) {
useEffect(() => {
import ('bootstrap/dist/js/bootstrap.js')
import ('react-toastify/dist/ReactToastify.css')
}, []);
return (
<>
<AuthProvider>
<Nav />
<div className="allButFooter ms-3 me-3">
<Component {...pageProps} />
<ToastContainer />
</div>
<Footer />
</AuthProvider>
</>
)
}
export default MyApp
我不知道你的案子和我的案子一样,但我希望这对你有帮助。
https://stackoverflow.com/questions/72093342
复制相似问题