我用webpack构建了我的项目,使用babel进行ES6转换,并使用以下预设:
{
"presets": ["react", "es2015", "stage-1"]
}
webpack生产配置以下列方式查看:
var path = require('path');
var node_modules_dir = path.resolve(__dirname, 'node_modules');
module.exports = {
entry: [ path.resolve(__dirname, 'src/index.js') ],
output: {
path: path.resolve(__dirname, 'dist'),
filename: 'bundle.js'
},
module: {
loaders: [{
test: /\.(js|jsx)$/,
exclude: [node_modules_dir],
loader: 'babel'
},
{
test: /\.(png|jpg)$/,
exclude: [node_modules_dir],
loader: 'url?limit=100000'
},
{
test: /\.svg$/,
exclude: [node_modules_dir],
loader: 'svg-url-loader'
},
{
test: /\.scss$/,
exclude: [node_modules_dir],
loader: 'style!css!sass'
}]
},
resolve: { extensions: ['', '.js', '.jsx'] }
};
我现在想将它部署到服务器上。生产就绪文件位于dist
文件夹中,因此:
dist/
index.html
bundle.js
我提到这一点,因为我需要我的切入点为dist/index.html
。
由于我以前从未部署过,我不确定我的server.js文件应该是什么样子,经过一些研究后,似乎我需要使用http服务器或快速服务器,还有一些babel transpiration以及es6语法。 / p>
可以使用的最低设置是什么?
答案 0 :(得分:0)
React / redux是客户端的,即浏览器执行你的代码,服务器只需要在那里获得它。
您的服务器不需要做任何聪明的事情,比如转换,因为您的构建过程已经完成了并创建了一个' bundle'准备好在浏览器中执行。因此,快速静态服务器(例如使用Nginx,Apache或Varnish的服务器)只需要提供dist
文件夹的内容。
可以使用Node,Python等等,但是你不需要它们,你只需要提供文件。