使用webpack渲染节点服务器上的组件

我有一个反应组件。 <myFooter> 。 这是一个简单的页脚。

 import React from 'react'; import './my-footer.scss'; export default class myFooter extends React.Component { render() { return ( <footer className="col-xs-12"> hello ! </footer> ); } } 

我想从服务器端渲染它。 在后端,我有一个快递服务器。 为此我写了这个:

 import myFooter from '../components/my-footer.jsx'; app.get('/footer', function(req, res) { var string1 = ReactDOMServer.renderToString(myFooter); res.send(string1); }); 

现在的问题是服务器无法读取sass文件。 对于客户端渲染,我使用的是webpack。 Webpack构build一切,并提供一个包文件。

但我不知道如果它的服务器端发生了什么。 我怎样才能编译使用webpack。 如果可以的话,我是否需要为节点服务器上的每个请求编译我的应用程序?

你需要2个webpack的构build:

1构build客户端1来构build服务器。

在构build服务器时,请在webpackconfiguration中使用css-loader/locals而不是css-loader

通读这个问题的更多细节: https : //github.com/webpack/css-loader/issues/59