Javascript 如何打包到';生产';我的网站有网页包吗?
我设法使用这个配置脚本来创建和测试一个简单的React-Flux Web应用程序 现在我有了一个我在运行Javascript 如何打包到';生产';我的网站有网页包吗?,javascript,reactjs,npm,webpack,packaging,Javascript,Reactjs,Npm,Webpack,Packaging,我设法使用这个配置脚本来创建和测试一个简单的React-Flux Web应用程序 现在我有了一个我在运行npm start时喜欢的网站,在配置中添加生产构建的最简单/最好的方法是什么?当我使用“package”命令时,我希望得到一个包含所有最终html和缩小的js文件的prod文件夹,这是我应该期望的吗 这是我的包。json: { "name": "react-hot-boilerplate", "version": "1.0.0", "description": "Boilerpl
npm start
时喜欢的网站,在配置中添加生产构建的最简单/最好的方法是什么?当我使用“package”命令时,我希望得到一个包含所有最终html和缩小的js文件的prod
文件夹,这是我应该期望的吗
这是我的包。json:
{
"name": "react-hot-boilerplate",
"version": "1.0.0",
"description": "Boilerplate for ReactJS project with hot code reloading",
"scripts": {
"start": "node server.js",
"lint": "eslint src"
},
"author": "Dan Abramov <dan.abramov@me.com> (http://github.com/gaearon)",
"license": "MIT",
"bugs": {
"url": "https://github.com/gaearon/react-hot-boilerplate/issues"
},
"homepage": "https://github.com/gaearon/react-hot-boilerplate",
"devDependencies": {
"babel-core": "^5.4.7",
"babel-eslint": "^3.1.9",
"babel-loader": "^5.1.2",
"eslint-plugin-react": "^2.3.0",
"react-hot-loader": "^1.2.7",
"webpack": "^1.9.6",
"webpack-dev-server": "^1.8.2"
},
"dependencies": {
"react": "^0.13.0",
"flux": "^2.0.2",
"events": "^1.0.2",
"object-assign": "^3.0.0",
"jquery": "^2.1.4",
"imports-loader": "^0.6.4",
"url-loader": "^0.5.6",
"numeral": "^1.5.3",
"bootstrap": "^3.3.5",
"d3": "^3.5.6",
"zeroclipboard": "^2.2.0",
"react-toastr": "^1.5.1",
"d3-legend": "^1.0.0"
}
}
而且我不确定要保留、更改(prod config)或添加哪些部分(如果需要副本)…您需要使用
--optimize minimize
选项(minifies)运行您的网页构建,并确保NODE_ENV
设置为production
(这将有效地禁用/删除React的仅用于开发的代码,例如道具类型检查)
您可以通过将build:production
(您可以随意命名)命令添加到您的package.json
,例如NODE\u ENV=production webpack--optimize minimize
将其添加到包中。json的脚本
"build:production": "NODE_ENV=production webpack --optimize-minimize"
并通过npm run build:production
注意:这是假设您已经正确配置了Webpack,并且可以通过从命令行运行Webpack
来“构建”
您可能需要查看您的webpack.config,我建议您在这个样板文件之外了解webpack.Egghead.io有一些关于这个主题(以及许多其他主题)的很棒的短视频:)Egghead.io/search?q=webpack,特别是谢谢,我在其他地方读到,
webpack-p
用于构建生产(小型化),这与--optimize minimize
有什么不同吗?是的-p
是--minimize optimize
:)的别名。另外,您为什么指示使用npm run build:production
?我已经有了npm start
脚本,它不需要运行吗?谢谢这是npm的一个特点<代码>测试和开始
脚本不需要运行
,但您添加的任何自定义脚本
都需要它。谢谢:)我是否可能需要调用Webpack并指定新的配置文件<代码>“build:prod”:“NODE_ENV=production webpack--optimize minimize--config webpack.prod.config.js”另外,我在问题中添加了我的webpack.config.js
,如果这有帮助的话,但我并不真正理解它:我想是输出
部分的魔力所在
"build:production": "NODE_ENV=production webpack --optimize-minimize"