Next13是一周前发布的,我正在尝试将一个Next12应用程序迁移到一个Next13。
import { createContext } from 'react';
在任何服务器组件中。
我收到此错误:
Server Error
Error:
You're importing a component that needs createContext. It only works in a Client Component but none of its parents are marked with "use client", so they're Server Components by default.
,----
1 | import { createContext } from 'react';
: ^^^^^^^^^^^^^
`----
Maybe one of these should be marked as a client entry with "use client":
这里有没有其他的选择,或者我必须求助于道具钻取来获得服务器端渲染?
2条答案
按热度按时间tv6aics11#
我好像可以用
createServerContext
unftdfkk2#
这是React的SSR的一个新特性,用于识别组件是客户端还是服务器端。
如果您只在客户端使用此组件,则可以在此组件的顶部定义
'use client';
。您可以查看此Next.js文档和this React RFC以了解详细信息