实用webpack-dev-server
webpack-dev-server的作用
- 文件作出改动之后,保存,立即开始编译文件
- 编译后的文件是保存在内存中的,在项目文件夹中看不到编译后的文件
- 编译完成之后立即自动刷新浏览器
测试webpack-dev-server先建立一个小的demo,按照下面的方式敲命令
npm init -y
npm install webpack --save-dev
npm install webpack-dev-server --save-dev 局部安装
在项目文件夹中新建src目录,该目录下面存放开发文件,里面放入index.js
在项目文件夹中新建dist目录,该目录下面存放打包后的生产文件,里面存入index.html
编写webpack.config.js文件,做如下配置
var path = require('path'); -> node.js的路径模块
module.exports = {
entry: './src/index.js',
output: {
path: path.join(__dirname, '/dist'), -> 必须是绝对路径
filename: 'bundle.js',
publicPath: '/css/' -> 这个选项是用来告诉webpack到这个路径下面去寻找资源,相当于是路径的一个别名,
所以在html页面中这样引入js文件即可<script src="css/bundle.js"></script>,关于这个选项的作用网上的人解答参差不齐,误导众人
}
}
在运行webpack-deb-server之前先使用webpack来打包一下 node_modules\.bin\webpack
然后运行webpack-dev-server
因为采用的是局部安装,win7下面这样运行 node_modules\.bin\webpack-dev-server --content-base ./dist
用来监听dist目录下面的index.html,现在你可以随意的更改index.js文件的内容,可以实时编译刷新浏览器,
细心的同学可能发现,其实bundle.js中的内容是没有变化的,webpack-dev-server将这些操作放在内存中执行
关于两种监视模式
- 第一种是Iframe mode
开启这个模式什么都不用管 node_modules\.bin\webpack-dev-server --content-base ./dist
这样开启webpack-dev-server后,通过http://localhost:8080/webpack-dev-server/即可查看
在主页会有更新提示
- 第二种是Inline mode
通过 node_modules\.bin\webpack-dev-server --inline --content-base ./dist 这种方式开启
然后通过 http://localhost:8080/ 查看,编译的提示信息在控制台可以查看
- 并没有什么卵用,上面两种方式,个人感觉纯粹装逼专用
其他功能
- 开启热替换
node_modules\.bin\webpack-dev-server --inline --hot --content-base ./dist- 作用,当删除,添加模块时,不需要刷新页面
- 杂项
--quiet 隐藏打包信息
--compress 压缩
--progress 显示打包进度
个人感觉上面无用
- 开启热替换
上面的命令可以添加到npm的scrpit选项中去,简化操作
实用webpack-dev-server的更多相关文章
- 笔记:配置 webpack dev server
笔记:配置 webpack dev server 安装 webpack-dev-server 组件 配置 webpack.config.js 配置 增加 html-webpack-plugin 组件 ...
- [Webpack] Access Webpack Dev Server from Mobile Safari on an iPhone
Testing your sites on mobile devices is a critical part of the development process. Webpack dev serv ...
- 配置Webpack Dev Server 实战操作方法步骤
本文摘要:配置 Webpack Dev Server 可以解决本地开发前端应用时,手动执行 webpack 命令或 yarn build 命令,再去浏览器中访问 dist/index.html 的麻烦 ...
- webpack dev server 和 sublime text 配合时需要注意的地方
参考:https://webpack.js.org/guides/development/ Adjusting Your Text Editor Some text editors have a &q ...
- webpack dev server 配置 启动项目报错Error: listen EADDRINUSE
Error: listen EADDRINUSE 0.0.0.0:5601 它的意思是,端口5601被其他进程占用. 切换端口即可解决问题
- 解决新版本webpack vue-cli生成文件没有dev.server.js问题
新版本webpack生成的dev.server.js 在webpack.dev.conf.js中 webpack.dev.conf.js const axios = require('axios') ...
- webpack 4 & dev server
webpack 4 & dev server proxy https://webpack.js.org/configuration/dev-server/#devserverproxy htt ...
- vue-cli脚手架之webpack.dev.conf.js
webpack.dev.conf.js 开发环境模式配置文件: 'use strict'//js按照严格模式执行 const utils = require('./utils')//导入utils. ...
- Vue.js如何搭建本地dev server和json-server 模拟请求服务器
前言:vue-cli(版本更新),由原来的2.8.1升级为2.9.1.主要改变是原来在build文件夹下的dev-server.js删掉了,增加了webpack.dev.conf.js. 所以这次讲的 ...
- npm ERR! mathine_call@1.0.0 dev: `webpack-dev-server --inline --progress --config build/webpack.dev.conf.js` npm ERR! Exit status 1
internal/modules/cjs/loader.js:583 throw err; ^ Error: Cannot find module 'webpack' at Function.Modu ...
随机推荐
- 微信公众号 iOS UITextFiled 用中文键盘输英文出现空格的解决方法
问题出现的现象: 最近公司开发微信公众号邀请码,需要对用户输入进行限制,允许输入的是字母和数字,其他输入会使用正则表达式禁止.但是有iOS用户反映在输入字母过程中,经常几个字母之后,邀请码不对,查看公 ...
- 算法练习5---快速排序Java版
基本思想:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成 ...
- hdu 5973 Game of Taking Stones(大数,bash game¥)
Game of Taking Stones Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Ot ...
- python迭代器与生成器(二)
一.什么是迭代? 迭代通俗的讲就是一个遍历重复的过程. 维基百科中 迭代(Iteration) 的一个通用概念是:重复某个过程的行为,这个过程中的每次重复称为一次迭代.具体对应到Python编程中 ...
- 【scala】元组
元组跟list类似,元组也是不可边的,但是元组可以容纳不同类型的元素. 元组用起来很简单,要实例化一个新的元组,只需要将对象放在圆括号当中,用逗号隔开即可. val pair = (99,“Luftb ...
- Prism5.0新内容(纯汉语版)
Prism 5.0 包含很多新东西,新的快速入门示例,新的范例,更新的文档,Prism类库代码的改变.用来解决已有问题,回应社区所提的需求.(这句话跟 What's New in Prism Libr ...
- Prism开发人员指南5-WPF开发 文档翻译(纯汉语版)
2014四月 Prism以示例和文档的形式帮助你更简单的设计丰富灵活易维护的WPF程序.其中使用的设计模式体现了一些重要的设计原则,例如分离关注点和松耦合,Prism帮助你利用松耦合组件设 ...
- a, b交换与比较问题
1. 求a, b中较大的数,不使用if.?.switch等判断语句. 答案: 另一种思路是求两者的差,然后通过位运算判断差值的正负,不过个人觉得还是第一种各位简洁优雅. 2. 交换a, b的值,要求不 ...
- 使用flowable 6.1.2 REST API 运行请假审批流程
一.下载 flowable rest war 包 http://download.csdn.net/detail/teamlet/9913312 二.部署 复制flowable REST.war到To ...
- 《Scala入坑笔记》缘起 3天就搞了一个 hello world
有小伙伴向我咨询 play framework 的问题,我就想了解一下 play framework ,按照官方的文档,要使用 SBT 安装,就掉进了 SBT 的坑. 第一坑:国外仓库太慢 安装完成后 ...