github仓库:https://github.com/llcMite/webpack.git

1、什么是webpack?

webpack可以看做是模块打包机:它做的事情是,将静态资源当成模块打包成一个或者多个文件。并且可以将javascript模块及其它一些浏览器不能直接运行的扩展语言(less,sass,es6,TypeScript)打包成合适的格式以供浏览器使用。

2、webpack和grunt以及gulp相比有什么特性?

webpack与另外两个是没有什么可比性的,gulp/grunt是一种能够优化前端的开发流程,而webpack是一种模块化的解决方案,webpack的优点使得他可以替代gulp和grunt类工具。

注意:现在版本更新的都很快,如果你不是很熟悉最新的版本,最好先使用旧的版本会更好。

这里只记录常用的几个模块配置:

1)babel

首先安装需要的模块babel-preset-react是我配置react的jsx语法用的,不用的可以不需要安装

cnpm install babel-core babel-loader babel-preset-env babel-preset-react --save-dev

然后在webpack.config.js里配置

var path=require('path');

module.exports={
//入口
entry:{
index:'./index.js',
},
//输出
output:{
path:path.resolve(__dirname,'dist'),
filename:'bundle.js'
},
module:{
//babel配置
loaders: [
{
test: /\.js$/,
loader: 'babel-loader',
exclude: /node_modules/,
query: {
presets: ['react', 'env']
}
}
]
},
}

2)webpack-dev-server(用于自动刷新和热模块替换(只替换更新的部分而不是页面重载))

cnpm install webpack-dev-server --save-dev

配置webpack.config.js

var path=require('path');
var webpack=require('webpack'); module.exports={
//入口
entry:{
index:'./index.js',
},
//输出
output:{
path:path.resolve(__dirname,'dist'),
filename:'bundle.js'
},
//webpack-dev-server配置
devServer:{
contentBase: path.join(__dirname, "dist"), //指定服务器资源的配置属性
port:7000,
//host:'0,0,0,0'
overlay: true, //当编译出错时在浏览器上显示错误
stats:'errors-only', //打印想要打印的信息minimal","normal","verbose
compress:true, //当它被设置为true的时候对所有的服务器资源采用gzip压缩
hot:true, //自动刷新
inline:true, //模块热替换
// 是否需要跨域去请求接口本地测试
        // proxy: {
        //     "/api":{
        //         target:"xxx.xx.com",
        //         changeOrigin:true,
        //         pathRewrite:{
        //             "^/api":""
        //         }
        //     }
        // }
},
module:{
//babel配置
loaders: [
{
test: /\.js$/,
loader: 'babel-loader',
exclude: /node_modules/,
query: {
presets: ['react', 'env']
}
}, ]
},
plugins:[
new webpack.HotModuleReplacementPlugin()
]
}

babel,webpack-dev-server配置的更多相关文章

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

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

  2. 笔记:配置 webpack dev server

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

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

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

  4. [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 ...

  5. webpack dev server 和 sublime text 配合时需要注意的地方

    参考:https://webpack.js.org/guides/development/ Adjusting Your Text Editor Some text editors have a &q ...

  6. vue2+webpack 开发环境配置

    前提条件: 1.安装node.js https://nodejs.org/en/ 下载安装合适的平台 2.安装npm 第一步:初始化项目 新建文件夹 E:\app 推荐vue项目目录结构: confi ...

  7. 解决新版本webpack vue-cli生成文件没有dev.server.js问题

    新版本webpack生成的dev.server.js 在webpack.dev.conf.js中 webpack.dev.conf.js const axios = require('axios') ...

  8. VUE开发请求本地数据的配置,旧版本dev-server.js,新版本webpack.dev.conf.js

    VUE开发请求本地数据的配置,早期的vue-lic下面有dev-server.js和dev-client.js两文件,请求本地数据在dev-server.js里配置,最新的vue-webpack-te ...

  9. vue模拟后台数据,请求本地数据的配置(旧版本dev-server.js,新版本webpack.dev.conf.js)

    最近学习一个vue-cli的项目,需要与后台进行数据交互,这里使用本地json数据来模仿后台数据交互流程.然而发现build文件夹下没有dev-server.js文件了,因为新版本的vue-webpa ...

  10. webpack.config.js====配置babel

    参考:https://www.jianshu.com/p/9808f550c6a91. 安装依赖babel-loader: 负责 es6 语法转化babel-preset-env: 包含 es6.7 ...

随机推荐

  1. qrcode插件生成二维码

    <!DOCTYPE html> <html> <head> <meta name="viewport" content="wid ...

  2. IdentityServer4授权和认证

    IdentityServer4 简称ids4 oidc了解:http://www.jessetalk.cn/2018/04/04/oidc-asp-net-core/ 是一个去中心化的网上身份认证系统 ...

  3. #WEB安全基础 : HTTP协议 | 0x5 URI和URL

    URI(统一资源标识符)和URL(统一资源定位符)相信大家都知道URL吧,我们看看它们有什么区别 URI 长得就像这样 /images/hackr.jepg URL 长得像这样 http://hack ...

  4. 退出unity运行

    public void GetExit()//退出运行 { #if UNITY_EDITOR UnityEditor.EditorApplication.isPlaying = false;//用于退 ...

  5. 使用dbeaver查mysql的表会导致锁表的问题

    查询完成之后接着需要使用rollback,不然其它session没法执行语句.

  6. acm 2015北京网络赛 F Couple Trees 主席树+树链剖分

    提交 题意:给了两棵树,他们的跟都是1,然后询问,u,v 表 示在第一棵树上在u点往根节点走 , 第二棵树在v点往根节点走,然后求他们能到达的最早的那个共同的点 解: 我们将第一棵树进行书链剖,然后第 ...

  7. python 文本处理操作

    打开和关闭文件 open 函数 用Python内置的open()函数打开一个文件,创建一个file对象,相关的方法才可以调用它进行读写 ''' 模式 描述 r 以只读方式打开文件.文件的指针将会放在文 ...

  8. 『Numpy』np.meshgrid

    生成网格坐标,一个很好的说明图如下: 虽然xy双坐标比较常用,但实际上其输入可以是任意多的数组,输出数组数目等于输出数组数目,且彼此间shape一致. 如果输入数组不是一维的,会拉伸为1维进行计算. ...

  9. github笔记

    git config --global user.name"liuhongli1"liuhongli@liuhongli:~/github/test$ git config --g ...

  10. Python2.x与3.x对比

    1.默认支持中文 2.不再兼容2.x 3.核心语法调整 4.新特性默认只支持3.x