参考链接https://segmentfault.com/a/1190000006178770css
一.环境html
1.node.js v8.4.0 node
2.新建项目及文件夹结构react
webpack-hello3webpack
app //项目程序文件夹web
images //图片文件夹npm
index.tmpl.html //项目启动界面模板,依据该模板生成正真的项目启动页面index.htmljson
main.js //项目的惟一入口程序,也是启动程序segmentfault
build //存放编译(打包)后的文件夹浏览器
3. npm init //在改文件夹下运行 (生成一个包管理文件package.json)
4. npm install --save-dev webpack //安装webpack
5.package.json文件中配置命令
{
}
npm的start
命令是一个特殊的脚本名称,其特殊性表如今,在命令行中使用npm start
就能够执行其对于的命令,若是对应的此脚本名称不是start
,想要在命令行中运行时,须要这样用npm run {script name}
如npm run build
其中 打包和编译的区别,打包是安装打包配置把js进行打包输出,编译是安装编译配置把ts等代码文件编译成.js文件,或对代码进行压缩,优化等。
二.配置文件及运行本地服务
1.在webpack-hello3文件夹根目录下新建webpack.config.js文件
2.编辑配置文件
/* * 这样配置全部的js文件都会打包在一个bundle.js文件中 * 此时 index.html引用 * <script src="bundle.js"></script> entry:__dirname+"/app/main.js", //程序惟一入口文件, output:{ path:__dirname+"/public",//打包后文件存放的地方 filename:"bundle.js"//打包后输出文件的文件名 }, */ /* * 要把各js文件分多个文件打包时,须要这样配置 * 此时 index.html引用 * <script src="main.js"></script> * <script src="gr.js"></script> */ entry:{ main:__dirname+"/app/main.js", //main 表示程序惟一入口文件 gr:[__dirname+"/app/Greeter.js"] //这个能够把多个js文件合并成一个gr.js }, output:{ path:__dirname+"/public",//打包后文件存放的地方 filename:"[name].js" //这样会分别生成main.js和 gr.js 两个文件 },
// npm一次性安装多个依赖模块,模块之间用空格隔开 ,
//babel-core babel核心包,babel-preset-env 解析Es6,babel-preset-react解析React的JSX
1.安装babel
npm install --save-dev babel-core babel-loader babel-preset-env babel-preset-react
2.配置babel
css-loader
使你可以使用相似
@import
和
url(...)
的方法实现
require()
的功能
style-loader
将全部的计算后的样式加入页面中,两者组合在一块儿使你可以把样式表嵌入webpack打包后的JS文件中。
{
test: /\.css$/, use: [ { loader: "style-loader" }, { loader: "css-loader", options: { modules: true } } ] }
引用形式