webpack

基于node环境,必须确保node已经安装好?
node -v
npm -v


webpack基础入门
官网: http://webpack.github.io/docs/
前身: browserify
缺点,只能转化js

webpack作用?
一切都是模块化(js,css,图片等)
一个模块加载器、打包工具


gulp:
npm install gulp-cli -g

安装webpack:
流程:

  1. 安装webpack命令环境
    cnpm install webpack -g

    验证ok?
    webpack --version

  2. package.json 工程文件(需要依赖模块、库描述、版本、作者...)
    npm init

  3. 安装本地webpack
    cnpm install webpack -D


webpack第一个小例子:
index.html 页面
entry.js 入口文件
编写咱需要代码

终端: webpack entry.js bundle.js

自动解决依赖:
默认支持 commonJs规范


webpack默认只支持javascript文件

  • 需要用加载器(loader)

loader类似一种转化器, 它可以把一个东西,转成另一个

css文件:
style-loader
css-loader

下载: cnpm install style-loader css-loader -D

注意: 在webpack中,多个loader加载
    !  ->  连接多个loader

配置 webpack.config.js
作用: 配置一些webpack需要入口、出口、loader

最好用这个

终端: webpack

webpack 开发环境下编译(打包)
webpack -p  生产环境下编译(压缩)
webpack -w  监听文件改动,自动编译(速度快)
webpack -d       开启(生成)source maps  (用来调试)

webpack -wdp

不推荐: 如果就不用webpack.config.js,自己定义名字 config.js
运行: webpack --config config.js


ES6-> babel转化

babel使用:
cnpm install babel-loader babel-core babel-preset-es2015 -D

导出模块:
    export default {}

引入模块:
    import 名字 from 模块名

配置babel预设:
    1). webpack.config.js
        babel: {
            "presets": ['es2015']
        }
    2).  baberc  配置

webpack-dev-server

安装命令环境:
cnpm install webpack-dev-server -g

listen EACCES 127.0.0.1:8080 此端口号已经被监听过了(端口号被占用)

参数:
webpack-dev-server --port 8088 端口号
webpack-dev-server --inline 改变完代码以后,自动刷新浏览器
webpack-dev-server --hot 热重载(局部更改)

终端: webpack-dev-server --port 8088 --inline --hot

写道webpack.config.js配置文件:
devServer: {
port: 8088,
inline: true
}


把运行命令放到package.json文件:
"scripts":{
"dev": "webpack-dev-server --inline --hot --port 8088"
}

终端: npm run dev

resolve: 配置,省略引入文件名后缀,别名
resolve: {
"extensions": ['', '.js', '.css', '.json', '.jsx'] //可以省略后缀名
}


react配置:
ES6语法: babel-core babel-preste-es2015

babel-loader
babel-preset-react  //react的预设
react-hot-loader
-------------------------------
安装react相关库: react , react-dom
--------------------------------

最终编写 React先关一些代码

你可能感兴趣的:(webpack)