webpack-dev-server是一个小型的Node.js Express服务器,它使用webpack-dev-middleware来服务于webpack的包,除此自外,它还有一个通过Sock.js来连接到服务器的微型运行时.

配置(webpack.config.js):

var path = require("path");
module.exports = {
entry: {
app: ["./app/main.js"]
},
output: {
path: path.resolve(__dirname, "build"),
publicPath: "/assets/",
filename: "bundle.js"
}
};

你有一个app文件夹下的初始化入口文件,并打包成build.js文件到build文件夹。

webpack-dev-server可以通过NPM命令安装

$ npm install webpack-dev-server.

当前目录

webpack-dev-server会默认会指定当前目录为基本目录,除非你指定了基本目录。

$ webpack-dev-server --content-base build/

使用当前命令,webpack-dev-server将会服务于静态文件到build文件夹。服务器将会监听源文件,无论何时文件改变,都将重新编译。

被修改的包将会从内存中保存到在publicPath指定的相对目录中,这个将不会被输出到指定的output目录中。如果一个包已经存在于同一URL路径中,则内存中的包优先.

使用上述这种配置,包能够在以下路径中找到,localhost:8080/assets/bundle.js。

加载你的包文件,你需要在你指定的静态文件夹build中创建一个index.html文件(--content-base option),以下是例子

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<script src="assets/bundle.js"></script>
</body>
</html>

在默认配置下,前往localhost:8080/来启动你的应用,配置中的资源目录,前往localhost:8080/assets。

自动刷新

webpack-dev-server支持多种模式来自动刷新页面:

  • iframe mode(页面被嵌入一个iframe并且在改变时重载)
  • inline mode(一个小型的webpack-dev-server客户端入口被添加到包中,当页面改变时自动刷新)

 每个模式都支持Hot Module Replacement.Hot Module Replacement中,包会通知改变发生,Hot Module Replacemen将会加载更新的模块并且注入到运行的应用程序中。

Iframe mode

使用iframe mode不需要更多的配置,只需要跳转到

http://«host»:«port»/webpack-dev-server/«path».

根据上述配置:http://localhost:8080/webpack-dev-server/index.html.

  • 配置不需要更改
  • 好的信息条在应用程序上方
  • URL改变不会反射到浏览器的URL条上

Inline mode

使用inline mode,也需要:

  • 指定--inline在命令行中
  • 指定devserver: {inline: true}在webpack.config.js

这将添加webpack-dev-server客户端入口到webpack配置中。这没必要在url中改变,只需要跳转到http://«host»:«port»/«path».

根据上述配置:http://localhost:8080/index.html.

  • 必须配置option或者命令行flag
  • 日志状态打印在控制台和浏览器的控制台中
  • URL改变反射到浏览器的URL条中

web-dev-server配置的更多相关文章

  1. eclipse web开发Server配置

    用 Tomcat 和 Eclipse 开发 Web 应用程序:http://www.ibm.com/developerworks/cn/opensource/os-eclipse-tomcat/ Ec ...

  2. webpack dev server 配置 启动项目报错Error: listen EADDRINUSE

    Error: listen EADDRINUSE 0.0.0.0:5601 它的意思是,端口5601被其他进程占用. 切换端口即可解决问题

  3. Jexus-5.6.3使用详解、Jexus Web Server配置

    一.Jexus Web Server配置   在 jexus 的工作文件夹中(一般是“/usr/jexus”)有一个基本的配置文件,文件名是“jws.conf”. jws.conf 中至少有 Site ...

  4. [转载]部署Office Web Apps Server并配置其与SharePoint 2013的集成

    Office Web Apps Server 是新的 Office 服务器产品,它提供 Word.PowerPoint.Excel 和 OneNote 的基于浏览器的版本.单个 Office Web ...

  5. 部署Office Web Apps Server并配置其与SharePoint 2013的集成

    部署Office Web Apps Server并配置其与SharePoint 2013的集成   Office Web Apps Server 是新的 Office 服务器产品,它提供 Word.P ...

  6. IIS服务器 远程发布(Web Deploy)配置 VS2010 开发环境 Windows Server 2008服务器系统

    原文:IIS服务器 远程发布(Web Deploy)配置 VS2010 开发环境 Windows Server 2008服务器系统 asp.net 网站有三种常用的发布方式:分别是拷贝开发机上发布好的 ...

  7. 笔记:配置 webpack dev server

    笔记:配置 webpack dev server 安装 webpack-dev-server 组件 配置 webpack.config.js 配置 增加 html-webpack-plugin 组件 ...

  8. 配置Webpack Dev Server 实战操作方法步骤

    本文摘要:配置 Webpack Dev Server 可以解决本地开发前端应用时,手动执行 webpack 命令或 yarn build 命令,再去浏览器中访问 dist/index.html 的麻烦 ...

  9. spring-boot整合mybatis(web mysql logback配置)

    pom.xml相关的配置说明. 配置文件看着比价多,在创建spring-boot项目的时候,自需要添加web,mysql,mybatis三个选项即可 <?xml version="1. ...

  10. spring web.xml 难点配置总结

    web.xml web.xml是所有web项目的根源,没有它,任何web项目都启动不了,所以有必要了解相关的配置. ContextLoderListener,ContextLoaderServlet, ...

随机推荐

  1. 【codeforces 762A】k-th divisor

    time limit per test2 seconds memory limit per test256 megabytes inputstandard input outputstandard o ...

  2. 我的Boss有性能优化强迫症

    我有一个Boss,他曾经在阿里深造,在UC修炼,在一号店奔波. 经过几个月的合作开发和技术交流,我发现他非常在乎程序的性能,但是呢,对于有些地方,我觉得划不来. 比如说, 把数据库中的30多条记录,查 ...

  3. NSNull 和 nil 的判断

    情况1. 等于Null if ([_content isEqual:[NSNull null]] ) { //等于Null } 情况2.  等于nil if (_content==nil || [_c ...

  4. TensorFlow 下 mnist 数据集的操作及可视化

    from tensorflow.examples.tutorials.mnist import input_data 首先需要连网下载数据集: mnsit = input_data.read_data ...

  5. hexo改造

    一直在思考网站分类的问题. 用hexo默认的分类,并不利于用户直观的感受到网站的内容意图,尤其是hexo首页进入后是最近发表的文章列表.然后考虑开启多个hexo服务,每个hexo服务是一个分类内容,如 ...

  6. STL关联式容器之set和multiset

    一,set和multiset的基础知识 1.set和multiset的基础 set是一个集合容器,其中所包含的元素是唯一的,集合中的元素按照一定的顺序排列,元素插入过程是按照排序规则插入的.所以不能指 ...

  7. LeetCode: Generate Parentheses [021]

    [称号] Given n pairs of parentheses, write a function to generate all combinations of well-formed pare ...

  8. Windows系统的四个重要概念——进程、线程、虚拟内存、内核模式和用户模式

    引言 本来在写一篇Windows内存管理的文章,写着写着就发现好多基础的概念都要先讲.更可怕的是,这些基础的概念我却不能完全讲清楚.只好再把这本<深入解析Windows操作系统>翻到第一章 ...

  9. AI2XAML's Bug

    原文:AI2XAML's Bug My picture is like this: I use Adobe Illustator CS to draw the outline of that, I s ...

  10. Leetcode 238 Product of Array Except Self 递推

    给出一个数组 nums[i](i = 0,1,...,n-1)  输出数组output[i]满足 output[i] = nums[0] * num[1] * num[2] *..*num[i-1] ...