webpack的安装

webpack起步

 

###  什么是webpack

 

webpack是一个JavaScript应用的静态模块打包工具。
 
从这句话中有两个要点,**模块**和**打包**需要关注。**grunt/gulp**都可以打包,那有什么区别。

 

> 模块化

 

webpack可以支持前端模块化的一些方案,例如AMD、CMD、CommonJS、ES6。可以处理模块之间的依赖关系。不仅仅是js文件可以模块化,图片、css、json文件等等都可以模块化。

 

> 打包

 

webpack可以将模块资源打包成一个或者多个包,并且在打包过程中可以处理资源,例如压缩图片,将scss转成css,ES6语法转成ES5语法,将TypeScript转成JavaScript等等操作。**grunt/gulp**也可以打包。

 

**和grunt/glup的对比**

 

- grunt/glup的核心是Task
  - 我们可以配置一系列的task,并且定义task要处理的事务(例如ES6/TS转化,图片压缩,scss转css)
  - 之后可以让grunt/glup来执行依次这些任务,让整个流程自动化
  - 所以grunt/glup也被称为前端自动化任务管理工具
- 看一个gulp例子
  - task将src下的js文件转化为ES5语法
  - 并输入到dist文件夹中

 

<pre>const gulp = require('gulp')
    const babel = require('gulp-babel')
    gulp.task('js'()=>
      gulp.src('src/*.js')
        .pipe(babel({
          presets:['es2015']
        }))
        .pipe(gulp.dest('dist'))
    );
</pre>

 

- 什么时候使用grunt/gulp呢?
  - 如果工程依赖简单,甚至没有模块化
  - 只需要进行简单的合并/压缩
  - 如果模块复杂,相互依赖性强,我们需要使用webpack
- grunt/glup和webpack区别
  - grunt/glup更加强调的是前端自动化流程,模块化不是其核心
  - webpack加强模块化开发管理,而文件压缩/合并/预处理等功能,是附带功能

 

webpack就是前端模块化打包工具

 

###   webpack的安装

 

1. webpack依赖node环境。
2. node环境依赖众多包,所以需要npm,npm(node packages manager)node包管理工具
3. nvm是node管理工具可以自由切换node环境版本

 

**全局安装webpack**

 

```shell
npm install webpack -g
//指定版本安装
npm install webpack@3.6.0 -g
```

 

> 由于vue-cli2基于webpack3.6.0
> 如果要用vue-cli2的可以使用`npm install webpack@3.6.0 -g`

 

**局部安装**

 

```shell
npm install webpack --save-dev
```

 

- 在终端执行webpack命令,使用的是全局安装。

 

- 当在package.json中定义了scripts时,其中包括了webpack命令,那么使用的是局部webpack
posted @ 2021-05-07 10:30  好吗,好  阅读(35)  评论(0)    收藏  举报