使用webpack在节点服务器上渲染反应组件

时间:2015-12-08 04:33:31

标签: node.js reactjs sass isomorphic-javascript

我有一个反应组件。 <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构建了所有内容并提供了一个包文件。

但我不确定如果它是服务器端会发生什么。如何使用webpack进行编译。如果可以,我是否需要为节点服务器上的每个请求编译我的应用程序?

1 个答案:

答案 0 :(得分:0)

您需要2个webpack版本:

1构建客户端 1构建服务器。

构建服务器时,请在webpack配置中使用css-loader/locals而不是css-loader

请仔细阅读此问题,了解更多详情:https://github.com/webpack/css-loader/issues/59