Javascript 使用Next.JS响应选择V2.0

Javascript 使用Next.JS响应选择V2.0,javascript,reactjs,react-select,emotion,server-rendering,Javascript,Reactjs,React Select,Emotion,Server Rendering,我试图将React Select V2.0与Next.JS一起使用,但在服务器加载时,Select元素未设置样式,并闪烁为已设置样式 我尝试使用Next.JS的Emotion示例来服务器渲染Emotion样式(),但它似乎与我使用的样式化JSX冲突,我得到了错误样式表:insertRule只接受字符串。 我尝试使用此处显示的情感巴别塔配置选项: 但这会导致整个页面呈现为非样式化,然后闪烁为样式化 有人知道如何将Next.JS上的React Select V2与服务器渲染一起使用吗 谢谢。使用Re

我试图将React Select V2.0与Next.JS一起使用,但在服务器加载时,Select元素未设置样式,并闪烁为已设置样式

我尝试使用Next.JS的Emotion示例来服务器渲染Emotion样式(),但它似乎与我使用的样式化JSX冲突,我得到了错误
样式表:insertRule只接受字符串。

我尝试使用此处显示的情感巴别塔配置选项:

但这会导致整个页面呈现为非样式化,然后闪烁为样式化

有人知道如何将Next.JS上的React Select V2与服务器渲染一起使用吗


谢谢。

使用React Select v2.0 with Next.js进行闪烁渲染的解决方案是仅使用客户端渲染组件,我目前使用的Next.js如下所示:

const Select = dynamic(
  () => import('react-select').then((mod) => mod.default),
  {
    ssr: false,
    loading: () => null,
  },
);

像往常一样使用select component

与这里的其他答案类似,我能让它正常工作的唯一方法是使用动态导入。我鼓励您提供某种装载指示器

const ReactSelectNoSSR=dynamic(()=>import('../components/select'){
加载:()=>,
ssr:错误
});
如果您需要用Jest测试这个组件,您可以这样做。希望这有帮助