Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reactjs 具有可加载组件的服务器端渲染不工作_Reactjs_Typescript_Loadable Component - Fatal编程技术网

Reactjs 具有可加载组件的服务器端渲染不工作

Reactjs 具有可加载组件的服务器端渲染不工作,reactjs,typescript,loadable-component,Reactjs,Typescript,Loadable Component,我已经尝试了一段时间,但没有成功,因为我的配置适用于具有以下特征的应用程序: 打字稿 反应 使用可加载组件的服务器端渲染 网页包 出于某种原因,此代码段(本应查找服务器端渲染期间使用的所有区块)不起作用: server.get("*", (req, res, next) => { const extractor = new ChunkExtractor({ statsFile }); ... const tsx = extractor.collectChunks(

我已经尝试了一段时间,但没有成功,因为我的配置适用于具有以下特征的应用程序:

  • 打字稿
  • 反应
  • 使用可加载组件的服务器端渲染
  • 网页包
  • 出于某种原因,此代码段(本应查找服务器端渲染期间使用的所有区块)不起作用:

    server.get("*", (req, res, next) => {
        const extractor = new ChunkExtractor({ statsFile });
        ...
        const tsx = extractor.collectChunks(
            <ChunkExtractorManager extractor={extractor}>
                <StaticRouter location={req.url}>
                    <App data={data}/>
                </StaticRouter>
            </ChunkExtractorManager>
        );
        console.log(extractor.getScriptTags()); // prints server.js bundle but this isn't correct
    });
    
    server.get(“*”,(req,res,next)=>{
    const extractor=新的ChunkExtractor({statsFile});
    ...
    const tsx=extractor.collectChunks(
    


    我必须在网页包或可加载组件中缺少一些配置,但我已到处查找,似乎找不到问题。欢迎提供任何提示。谢谢!

    找到了问题。在我的网页包配置中,我的服务器配置中有以下内容:

    import * as LoadablePlugin from '@loadable/webpack-plugin';
    ...
    {
      entry: './src/server/app.tsx',
      target: 'node',
      externals: [nodeExternals()],
      output: {
        filename: 'server.js',
      },
      plugins: [
        new LoadablePlugin()
      ]
    }
    

    为了让一切正常工作,我不得不将
    LoadablePlugin
    添加到我的客户端配置中。

    Iv'e为我们的团队配置了超过800个小时的SSR、代码拆分、路由、在服务器页面标题中呈现dom门户、仅客户端组件、服务器上的redux等等,我的建议对于现在使用react的SSR的人来说,ice是为了使用NextJS,避免无数小时的头痛。我在桌面上使用react和SSR的性能分数大约为70-80。我的问题是我不能使用renderToNodeStream,当我使用可加载组件时,我会眨眼。这是。请告诉我我是否可以帮忙,或者你是否有关于这些问题的线索。我真的需要一些线索。