为什么客户端在进行服务器端渲染时会尝试使用库?

时间:2017-06-29 00:32:25

标签: reactjs webpack serverside-rendering

我正在尝试在我的react应用程序上实现服务器端呈现,但是遇到了这个错误。enter image description here 这是我的webpack.config.js文件。当我运行脚本":name"时,一切都正确编译。

npm start

1 个答案:

答案 0 :(得分:0)

我认为主要问题是webpack认为bundle.js是为节点环境构建的。因此,它假定需要可用。但是它适用于浏览器,它会抛出一个错误,因为require不可用。我不确定你的webpack.config.js是用于服务器还是浏览器,因为入口点是server.js,但输出是针对bundle.js的,我认为这是针对浏览器的。

查看服务器渲染教程here。基本上,您必须拥有服务器和浏览器的webpack配置文件。服务器webpack配置文件将具有定义服务器的入口点。而浏览器webpack配置文件将具有一个入口点,其中调用react-dom render方法。然后,确保浏览器webpack配置的输出是在html而不是服务器中使用的输出。