文档章节

webpack入门测试

wshining
 wshining
发布于 2017/04/25 18:34
字数 783
阅读 29
收藏 0

webpack是什么?

Webpack 是一个模块打包器。它将根据模块的依赖关系进行静态分析,然后将这些模块按照指定的规则生成对应的静态资源。

基本命令

      webpack         // 最基本的启动webpack的方法
	  webpack -w      // 提供watch方法;实时进行打包更新
	  webpack -p      // 对打包后的文件进行压缩
	  webpack -d      // 提供source map,方便调式代码

第一步安装nodeJS

在安装 Webpack 前,本地环境需要支持 node.js,下载nodeJS 安装包按照步骤,直接安装,安装的位置自定义;

安装好后运行命令行path

nodeJS中包含npm ,因此npm也会安装好可以利用node -v和 npm -v查看是否安装

如上显示则表示已将安装好,在C:\Users\Administrator\AppData\Roaming\npm目录下有如下文件,

注意:使用npm时可能初始该命令不是内部或外部命令问题,这有可能是npm配置文件出错了,

解决方法一:C:\Users\husha_000\AppData\Roaming\npm文件路径添加进环境变量中,重启命令行;

解决方法二:将npm文件删除,重新安装nodejs,简单暴力。

第二步安装全局的webpack

在命令行下执行

npm install webpack -g

这样我们才可以正确的使用webpack这个命令,

然后, 你还可以在当前项目里面也安装一个webpack, 这也是官方推荐的做法,

在命令中进入自己的项目,确定项目中有package.json文件,没有就用npm init 创建,

    npm init

在当前项目中也安装一个webpack,安装比较慢,要耐心等待

npm install webpack --save-dev

这样就可以在你的webpack.config.js里面方便的引用webpack

项目结构如下

其中app.js 是通webpack打包出来的文件,

index.html代码如下:

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

main.js文件如下:

require("./main.css");
require('./mymodule.js')();

mymodule.js文件如下:

module.exports = function() {
    document.write('hello webpack');
};

webpack.config.js文件如下:

var webpack = require('webpack');

module.exports = {
    entry: './main.js',
    output: {
    	 path: __dirname,
        filename: 'app.js'
    },
    
};

执行webpack

第三步使用loader

很多模块打包工具只是针对js文件,而webpack的强大之处在于将模块的概念进行了扩展,认为一切静态文件都是模块,包括css、html模板、字体、CoffeeScript等等。虽然webpack本身依然是只能够处理js文件,但是通过一系列的loader,就可以处理其它文件了。

下面以css-loaderstyle-loader为例,演示如何打包样式文件。首先执行如下命令安装依赖模块:

    安装css-loader:  
	# npm install css-loader  --save-dev
	安装style-loader  
	# npm install style-loader  --save-dev

main.css文件如下:

body{
	background: #f00;
}

修改main.js文件:

require("./main.css");
require('./mymodule.js')();

修改webpack.config.js文件:

var webpack = require('webpack');

module.exports = {
    entry: './main.js',
    output: {
    	 path: __dirname,
        filename: 'app.js'
    },
    module:{
    	loaders:[{
			test: /\.css$/,
			loader: 'style-loader!css-loader'
    	}],
    },
    
};

执行webpack

 

注意:此处的

只能用loader: 'style-loader!css-loader',不能用 loaders: ['style', 'css', 'autoprefixer',要不然就会报错。

 

 

 

© 著作权归作者所有

共有 人打赏支持
wshining
粉丝 14
博文 69
码字总数 47017
作品 0
深圳
前端工程师
私信 提问
08Vue.js快速入门-Vue综合实战项目

8.1. 前置知识学习 npm 学习 官方文档 推荐资料 需要了解的知识点 有时间专门写一个这样的专题,如果需要可以邮件我。malun666@126.com webpack基础学习 官方文档 Webpack了解的知识点: es...

aicoder
2017/11/24
0
0
1月中旬值得一读的10本技术新书(机器学习、Java、大数据等)!文末有福利!

1月中旬,阿里云云栖社区 联合 博文视点 为大家带来十本技术书籍(机器学习、Java、大数据等)。以下为书籍详情,文末还有福利哦! 书籍名称:Oracle数据库问题解决方案和故障排除手册 内容简...

阿里云云栖社区
01/12
0
0
库&插件&框架&工具

nodejs 入门 nodejs 入门教程,大家可以在 github 上提交错误 2016 年最好用的表单验证库 SMValidator.js 前端表单验证工具分享 浅谈前端线上部署与运维 说到前端部署,可能大多数前端工程师...

掘金官方
01/08
0
0
学习资料积累

webpack新手入门:http://www.jianshu.com/p/42e11515c10f react 文本编辑器:react-umeditor node版文本编辑器:https://github.com/netpi/ueditor (一)react各种学习资料 1.react服务端渲...

bocat
2016/09/08
3
0
Webpack(入门)

写在前面的话 阅读本文之前,先看下面这个webpack的配置文件,如果每一项你都懂,那本文能带给你的收获也许就比较有限,你可以快速浏览或直接跳过;如果你和十天前的我一样,对很多选项存在着...

Flyes
2017/12/13
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Confluence 6 教程:在 Confluence 中导航

当你对 Confluence 有所了解后,你会发现 Confluence 使用起来非常简单。这个教程主要是针对你使用的 Confluence 界面进行一些说明,同时向你展示在那里可以进行一些通用的任务和操作。 空间...

honeymose
今天
2
0
sed, awk 练习

1. sed打印某行到某行之间的内容 2. sed 转换大小写 将单词首字母转化大写 将所有小写转化大写 3. sed 在某一行最后面添加一个数字 4. 删除某行到最后一行 解析: {:a;N;$!ba;d} :a : 是...

Fc丶
今天
2
0
babel6升级到7,jest-babel报错:Requires Babel "^7.0.0-0", but was loaded with "6.26.3".

自从将前端环境更新到babel7,jest-babel之前是基于babel6的,执行时候就会报:Requires Babel "^7.0.0-0", but was loaded with "6.26.3". 很烦,因为连续帮好几台电脑修复这个问题,所以记...

曾建凯
今天
1
0
探索802.11ax

802.11ax承诺在真实条件下改善峰值性能和最差情况。 如何改善今天的Wi-Fi? 在决定如何改进当前版本以外的Wi-Fi时,802.11ac,IEEE和Wi-Fi联盟调查了Wi-Fi部署和行为,以确定更广泛使用的障碍...

linuxprobe16
今天
2
0
使用linux将64G的SDCARD格式化为FAT32

一、命令如下: sudo fdisk -lsudo mkfs.vfat /dev/sda -Isudo fdisk /dev/sda Welcome to fdisk (util-linux 2.29.2). Changes will remain in memory only, until you decide to wri......

mbzhong
今天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部