MAC电脑----webpack新手入门项目--图文教程
2017-07-11 00:15
656 查看
1.安装依赖
webpack项目依赖npm和nodejsbrew install npm npm install node
检查版本
npm -v node -v
2.安装webpack
1.全局安装:具体位置如下图npm install webpack -g
2.局部安装:当前项目中安装,比如桌面有个webpack文件夹
#打开终端--切换到当前项目文件夹 cd desktop/webpack #初始化,产生package.json文件 npm init #将webpack添加到package.json依赖中 npm install webpack --save-dev
npm init 命令后会让填写一些项目的信息
当前项目中webpack的位置
3.webpack的打包命令
#entry.js入口文件,output.js出口文件 #webpack entry.js output.js webpack app/index.js build/build.js
4.创建index.html文件,引入打包后的build.js文件
浏览器运行
5.index.js引用其他js文件,如app.js
这里要用到commonjs语法,关于commonjs规范的简介在这里—–commonjs规范
再次打包,运行index.html文件
6.引入css文件 –加载器loader
Webpack 本身只能处理 JavaScript 模块,如果要处理其他类型的文件,就需要使用 loader 进行转换。所以如果我们需要在应用中添加 css 文件,就需要使用到 css-loader 和 style-loader,他们做两件不同的事情,css-loader 会遍历 CSS 文件,然后找到 url() 表达式然后处理他们,style-loader 会把原来的 CSS 代码插入页面中的一个 style 标签中。
不安装对应的css-loader会报错
因为webpack默认加载js文件,所及其他类型的文件就需要加载对应类型的加载器loader
安装css-loader,style-loader
npm install css-loader style-loader --save-dev
原有方式引入文件报错的问题
require('style!css!../css/style.css')
正确方式
require('style-loader!css-loader!../css/style.css')
7.webpack.config.js配置文件
一定要注意路径问题,很容易出错
#打包命令就简化了,因为config文件设置了打包的入口和出口文件 webpack
关于报错
config文件里已经加载了loaders,红色区域的删除即可
webpack命令打包成功
处理文件后缀
8.webpack-dev-server自动刷新页面
轻量级的服务器,修改源码后,自动更新页面,不必再每次webpack打包刷新#安装到项目文件夹,添加到package.json中 npm install webpack-dev-server --save-dev
#启动服务器,自动更新的代码 webpack-dev-server --hot --inline
如果8080端口号被占,可以用如下代码,指定端口号
webpack-dev-server --port 4000
虽然终端显示已经刷新了,但是浏览器并没有刷新,
9.使用webpack-dev-server中遇到浏览器无法自动刷新的问题
下面有一些需要注意的点:1.webpack-dev-server并不能读取你的webpack.config.js的配置output!!
你在webpack.config.js里面的配置output属性是你用webpack打包时候才起作用的,对webpack-dev-server并不起作用
2.webpack-dev-server打包生产的文件并不会添加在你的项目目录中!!
***'它默认打包的文件名是bundle.js,不会真的出现在你的项目目录中,是保存在内存中的,而你本地项目中的build.js文件并没有变.............'***
如何解决?
方案一:直接引用服务器路径的build.js,即内存中的build.js文件
在package.json里配置,如下的热加载
package.json配置项中的scripts字段添加键值对
"build": "webpack-dev-server --hot --inline"
新的热更新打包命令
#效果和webpack-dev-server --hot --inline一样 npm run build
10.webpack.config.js配置热加载/更新
devServer:{ hot:true, inline:true }
访问的build.js仍是内存中的build.js,而本地的build.js并没有改变
如何解决?
#package.json文件 --content-base ./build/指定打包保存后的访问路径 "scripts": { "test": "test", "build": "webpack-dev-server --hot --inline --content-base ./build/" },
有build.js还需要对应的html
11.自动生成index.html插件
npm install html-webpack-plugin --save-dev
webpack.config.js中引用插件,并进行插件配置
// 引用插件并实例化 var htmlWebpackPlugin = require('html-webpack-plugin')
先用webpack 打包后再npm run dev开启服务,指定的”build”: “webpack-dev-server –hot –inline –content-base ./build/”
build文件下会生成一个和buid.js对应的index.html文件
重启服务后的效果,随时修改随时生效
为什么要打包后在重新启动服务?因为npm run dev生成的index.html存在内存中,本地指定的build并没有生成,所以需要webpack重新打包生成index.html
12.多个出口output文件的问题
未完待续……..相关文章推荐
- 新手入门:web项目控制台显示信息教程(对于新手开发,本地测试都很有用)
- IntelliJ IDEA 12 创建Web项目图文详细教程(转)
- 苹果MAC电脑安装Android sdk图文教程
- maven创建web项目入门教程
- Webpack入门——使用Webpack打包Angular项目的一个例子
- Webpack简易入门教程
- 新手入门:java文件转成jar包再转成exe文件——图文教程
- webpack 入门教程
- webpack 教科书式入门教程
- eclipse使用教程系列之三:导入maven项目转换web项目并打包编译图文详解
- webpack+vue.js快速入门教程
- maven很好的入门教程和创建web项目的注意事项
- Webpack入门——使用Webpack打包Angular项目的一个例子
- Webpack入门教程
- 个人自制maven快速入门及其管理web项目多模块的依赖图文并茂教程
- Mbed在线编译器新手入门教程(图文)
- PC电脑安装苹果操作系统MAC OS X【图文教程】
- Webpack 新手入门
- Vue.js——60分钟webpack项目模板快速入门【8】
- webpack 教程 那些事儿04-webpack项目实战分析