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 学习心得(一)的更多相关文章

  1. 前端模块化工具--webpack学习心得

    话说前头 webpack前段时间有听说一下,现在已经到了3.x的版本,自己没去接触.因为之前使用gulp来作为自己的项目构建工具.现在感觉gulp使用的趋势在减少.现在这段时间去接触了webpack, ...

  2. PWA学习心得

    PWA学习心得 一.什么是PWA Progressive  Web  App , (渐进式增强 WEB 应用) 简称 PWA ,是提升WebApp的体验的一种新方法,能给用户原生应用的体验. PWA ...

  3. 我的MYSQL学习心得(一) 简单语法

    我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据类型 我的MYSQL学习心得(五) 运 ...

  4. 我的MYSQL学习心得(二) 数据类型宽度

    我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据类型 我的MYSQL学习心得(五) 运 ...

  5. 我的MYSQL学习心得(三) 查看字段长度

    我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(四) 数据类型 我的MYSQL学习心得(五) 运 ...

  6. 我的MYSQL学习心得(四) 数据类型

    我的MYSQL学习心得(四) 数据类型 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(五) 运 ...

  7. 我的MYSQL学习心得(五) 运算符

    我的MYSQL学习心得(五) 运算符 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据 ...

  8. 我的MYSQL学习心得(六) 函数

    我的MYSQL学习心得(六) 函数 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据类 ...

  9. 我的MYSQL学习心得(七) 查询

    我的MYSQL学习心得(七) 查询 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据类 ...

随机推荐

  1. Hibernate---O/R Mapping

    1. JDBC数据库繁琐 2. sql语句不是面向对象 3. 可以在对象和关系表之间建立关联简化编程 4. O/R Mapping可以简化编程, 跨越数据库平台 比较流行的O/R Mapping Fr ...

  2. 使用SQLServer2005插入一条数据时返回当前插入数据的ID

    使用SQLServer2005插入一条数据时返回当前插入数据的ID 在执行完插入后 再执行 select @@identity from users 就OK 就是刚才插入的那行的 ID了 补充: @@ ...

  3. Oracle GoldenGate 异构平台同步(Mysql到Oracle)

    一.OGG安装配置(源端) 1.OGG下载 http://www.oracle.com/technetwork/cn/middleware/goldengate/downloads/index.htm ...

  4. [Unity Shader]ShaderForge制作Shader

    什么是ShaderForge ShaderForge的目标是推动统一的视觉质量提升到了新的高度, 给你自由的材质创建在一个视觉和直观的方式——不需要代码! ShaderForge的特性 •实时着色器预 ...

  5. python------unicode字符串转换为其他类型

    问题描述: 一下字符串转换为json类型 {u'src': u'crawl', u'cid': u'Ctengbangguoji', u'datatype': u'ItemBase', u'times ...

  6. LED调光,PFM即pulse frequence modulation

    PWM不是唯一的调制方式,可以PWM,也可以PFM,也可以混合调制. PWM即pulse width modulation的缩写,脉冲宽度调制,保持开关周期不变,调节开关导通时间. PFM即pulse ...

  7. input的onchange事件实际触发条件与解决方法

    input中onchange事件已经属于元老级别了,并且现在同onclick一样使用频率很高,然而onchange的机制实际上有很多童鞋并不清楚,我们通过实例来分析这个事件的特征. 触发onchang ...

  8. with补充知识点

    import threading,queue,time import contextlib @contextlib.contextmanager def fun(list_1,val): list_1 ...

  9. 小偷网站工具--Teleport Ultra

    可以克隆别人网站的工具 http://jingyan.baidu.com/article/219f4bf7dce58bde442d3836.html

  10. shell 脚本连接mysql数据库查询database中表的数量和表名

    #!/bin/bash MYSQLHOST="127.0.0.1" MYSQLUSER="root" MYSQLPWD="root" MYS ...