webpack 学习心得(一)
Webpack 是一个模块打包器。它将根据模块的依赖关系进行静态分析,然后将这些模块按照指定的规则生成对应的静态资源。
因为本人也正在学习webpack ,所以此篇文章比较入门。
首先你想使用webpack 需要安装node,推荐最好使用的是4.0以上(为了避免依赖安装错误)
npm install -g webpack
安装 webpack
你可以手动创建相应文件,也可以这样
mkdir webpackdemo
cd webpackdemo
创建 webpackdemo 文件夹 进入当前目录
我们需要一个 package.json 文件记录我们的使用依赖以及一些 demo 信息
这个我们通过
npm init
输入名称 ,描述...(以为这个demo所以无所谓,可以一直回车)完成后,在当前文件夹下 会生成 package.json 文件
此时我们需要手动创建一个配置文件 webpack.config.js (我们每次编译文件时,会自动查找该文件)
var webpack = require('webpack');
var Promise = require('es6-promise').Promise;
module.exports = {
entry:{
init:'./mySuc/index'
},
output:{
path:'./build',
publicPath: 'build/',
filename:'[name].js'
},
module:{
loaders:[{
test:/\.css$/,
loaders:['style','css']
},{
test: /\.(png|jpg)$/,
loader: 'url?limit=1200&name=[hash].[ext]'
}
]
},
// resolve.extensions
// 用于指明程序自动补全识别哪些后缀, 注意一下,
// extensions 第一个是空字符串! 对应不需要后缀的情况.
resolve: {
extensions: ['', '.coffee', '.js']
}
}
entry 目标文件入口 在这里我命名的是 index.js 内容为
console.log("ok!");
output 输出设置
path 当前输出路径
publicPath 服务器输出路径
filename 文件输出名字 现在我们可以在当前目录 新建一个html ,引入编译后的 文件 init.js 现在我们在 用 webpack 编译,刷新页面 在控制台可以 看到 ok!
module 是我门加载文件使用的 依赖配置 我这里用的 css模块依赖 和图片 模块依赖
在加载配置前,我们需要在安装模块
加载css 模块(页面嵌入模式)
npm install css-loader style-loader --save-dev
加载图片打包模块
npm install url-loader --save-dev
着这里有一个bug 就是 node 版本是 5.7 的时候,加在css 模块是会出现一个错误
在此感谢群友的帮助 (雨神),解决的方式如下
npm install es6-promise@3.1.
安装后在配置文件里面添加
var Promise = require('es6-promise').Promise;
到此一个简单的webpack demo 就完成了。
webpack 学习心得(一)的更多相关文章
- 前端模块化工具--webpack学习心得
话说前头 webpack前段时间有听说一下,现在已经到了3.x的版本,自己没去接触.因为之前使用gulp来作为自己的项目构建工具.现在感觉gulp使用的趋势在减少.现在这段时间去接触了webpack, ...
- PWA学习心得
PWA学习心得 一.什么是PWA Progressive Web App , (渐进式增强 WEB 应用) 简称 PWA ,是提升WebApp的体验的一种新方法,能给用户原生应用的体验. PWA ...
- 我的MYSQL学习心得(一) 简单语法
我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据类型 我的MYSQL学习心得(五) 运 ...
- 我的MYSQL学习心得(二) 数据类型宽度
我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据类型 我的MYSQL学习心得(五) 运 ...
- 我的MYSQL学习心得(三) 查看字段长度
我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(四) 数据类型 我的MYSQL学习心得(五) 运 ...
- 我的MYSQL学习心得(四) 数据类型
我的MYSQL学习心得(四) 数据类型 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(五) 运 ...
- 我的MYSQL学习心得(五) 运算符
我的MYSQL学习心得(五) 运算符 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据 ...
- 我的MYSQL学习心得(六) 函数
我的MYSQL学习心得(六) 函数 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据类 ...
- 我的MYSQL学习心得(七) 查询
我的MYSQL学习心得(七) 查询 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据类 ...
随机推荐
- Quick Cocos2dx Http通讯 JSON
参考: 1 http://stackoverflow.com/questions/5975952/how-to-extract-http-message-body-in-basehttprequest ...
- Quick Cocos2dx CCLuaStack has no member names 'loadChunksZip'
demo进行了这么久,已经很久没有连真机调试一下了,昨天下午我旁边的家伙连真机调试出了很多问题,于是我也连真机调一下吧. 运行一下project.android里面的 build_native.bat ...
- mustache.js基本使用(一)
作者:zccst 模板已是第二次接触,第一次使用模板记得是在十分系统里渲染页面时使用,当时已做到熟练使用,但实际上仍不知道原因. 再次学习模板已不是从0开始,所以还算顺手,但毕竟还只限于使用,今天继续 ...
- 2、手把手教你Extjs5(二)项目中文件的加载过程
上一节中用sencha工具自动创建了一个项目,并且可以在浏览器中查看.现在我们来看看js类加载过程.如下图所示: 1、首先:浏览器中输入 localhost:1841 ,调用 index.html; ...
- FZU 1397 保送
网络流入门题. 源点到每一个学生连一条边,容量为1 每个学校到汇点连一条边,容量为L 符合要求的学生和学校之间连边,容量为1. 从源点到汇点的最大流就是答案. #include<cstdio&g ...
- mac解压缩
tar 解包:tar xvf FileName.tar打包:tar cvf FileName.tar DirName(注:tar是打包,不是压缩!)---------------.gz解压1:gunz ...
- Lambda 可以转换成委托或expression树
1.关于C# Lambda Expressions: 一个Lambda Expression (译为Lambda式) 就是一个包含若干表达式和语句的匿名函数.可以被用作创建委托对象或表达式树类型.所 ...
- java 解析excel
2014年2月25日 14:24:48 解析excel方法 //首先是jar包下载,请自行百度 //代码 package cn.wuwenfu.excel; import java.io.File; ...
- java细节,细的你想象不到
一. 构造方法每次都是构造出新的对象,不存在多个线程同时读写同一对象中的属性的问题,所以不需要同步 . 如果父类中的某个方法使用了 synchronized关键字,而子类中也覆盖了这个方法,默认情况下 ...
- andorid 开放工具集合
1.开放工具集合 http://www.androiddevtools.cn/