一、什么是WebPack

官方解释:本质上,webpack 是一个现代 JavaScript 应用程序的静态模块打包器(module bundler)。当 webpack 处理应用程序时,它会递归地构建一个依赖关系图(dependency graph),其中包含应用程序需要的每个模块,然后将所有这些模块打包成一个或多个 bundle。

我的解释:把各种相同文件的类型,根据模块依赖关系(你自己显示声明的(Ex:import… require…))自动打包成一个单独的文件。

二、为什么需要WebPack

1.让你无须处理JS依赖关系,像以前,你必须注意引用的JS文件是否依赖其他JS文件,如果依赖,则必须手动处理他们的声明顺序。因为在JS文件代码中不能显示引入另一个JS文件。

2.减少网络请求,像以前,会声明很多JS引用,造成多次请求文件。与WebPack相比,虽然最后得到的总文件体积没有改变多少,但由于WebPack把所需要的JS打包成了一个单独的文件,网络请求只有一次,所以访问网页速度相对来说速度较快。

三、WebPack环境搭建

1.Node.js

(1) 什么是Node.js

官方解释:Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行时。

我的解释:Node.js就是一个Javascript的运行环境。和CLR、JVM有一点点类似。并且Node.js提供了Javascript的最新语法支持,具有面向对象的功能,因为把JS当做后端语言来用这是非常必要的。

(2) Node.js与WebPack的关系

WebPack是基于Node.js开发的,所以安装WebPack必须首先安装Node.js,Node.js去官网下载安装即可。npm是一个Node.s的包管理器,当你安装完成后,在命令行中输入npm –v 可以看到当前安装的版本,如下图所示:

2.本地安装与全局安装的区别

本地安装就是安装在你的项目目录下,因为没有设置环境变量,所以你必须要在BIN目录下去启动WebPack。全局安装就是安装在一个固定的地方,并且设置了系统的环境变量,以免除你输入一大堆路径的困扰。

3.本地安装

使用Node.js自带的包管理器npm来安装,用命令行工具进入到你的所在目录下,输入

npm install webpack

会产生以下文件

WebPack所在目录

4.全局安装

npm install webpack –g

先查看系统环境变量

找到npm所在的目录,可以发现WebPack的安装包

以上纯属个人理解,如有错误,希望指正!

1.WebPack概念的更多相关文章

  1. Webpack 概念

    概念 webpack 是一个现代的 JavaScript 应用程序的模块打包器(module bundler).当 webpack 处理应用程序时,它会递归地构建一个依赖关系图表(dependency ...

  2. Webpack概念

    webpack概念 我经常用 webpack,打算做一次比较详细的概念清点和梳理.从 0 配置 webpack,由于 webpack5(2019.07.27)暂时还没有发布.并且从Webpack Mi ...

  3. [WIP]webpack 概念

    创建: 2019/04/09 概念    入口 指示 webpack 应该使用哪个模块,来作为构建其内部依赖图的开始. 进入入口起点后,webpack 会找出有哪些模块和库是入口起点(直接和间接)依赖 ...

  4. webpack——概念的引入

    ## 在网页中会引用哪些常见的静态资源?+ JS - .js .jsx .coffee .ts(TypeScript 类 C# 语言)+ CSS - .css .less .sass .scss+ I ...

  5. Webpack 入门指迷--转载(题叶)

    最近看到这个东西,一头雾水.看了一些资料了解了Webpack概念,大体是webpack 是一个模块绑定器,主要目的是在浏览器上绑定 JavaScript 文件. 看到题叶写的一篇介绍,写的很好,转载连 ...

  6. webpack3中文版使用参考文档--全面解析webpack.config.js

    Webpack目前官方发布的最新版本是3.1.0,相对于2.0的怎么本,在语法上没有变动,只是新增了功能.使用webpack,需要事先安装node.js,并对node.js生态有一些基本的了解,比如( ...

  7. 理解 Gulp 和 Webpack(转)

    Gulp 和 webpack 之间的关系是十分暧昧的,却也经常被人误解,以为它俩是竞争关系,其实不然. Gulp 是一个任务管理工具,让简单的任务更清晰,让复杂的任务易于掌控:而 webpack 的理 ...

  8. Webpack 打包工具

    1. webpack 概念 [文档地址](https://www.webpackjs.com/concepts/) 2. webpack 命令使用及相关工具包 1. webpack 安装和打包命令: ...

  9. 转:Cesium 和 Webpack

    原文地址:https://www.jianshu.com/p/85917bcc023f 注意:webpack 和 webpack-cli 的安装参考 https://www.cnblogs.com/m ...

随机推荐

  1. 1.Redis介绍和使用场景

    (1)持久化数据库的缺点 平常我们使用的关系型数据库有Mysql.Oracle以及SqlServer等,在开发的过程中,数据通常都是通过Web提供的数据库驱动来链接数据库进行增删改查. 那么,我们日常 ...

  2. .Net Core之仓储(Repository)模式

    我们经常在项目中使用仓储(Repository)模式,来实现解耦数据访问层与业务层.那在.net core使用EF core又是怎么做的呢? 现在我分享一下我的实现方案: 一.在领域层创建Reposi ...

  3. 创建多线程的方式&Thread类的常用方法

    创建多线程的第一种方式:继承java.lang.Thread类 注意:1.一个线程只能执行一次start() 2.不能通过Thread实现类对象的 run()去启动一个线程 3.增加加一个线程,需要新 ...

  4. 深入理解JS:var、let、const的异同

    目录 序言 var 与 let 的区别 作用域 重复声明 绑定全局对象 变量提升与暂存死区 let 与 const 异同 参考 1.序言 var.let 和 const 都是 JavaScript 中 ...

  5. Rocket - decode - Inst Decode

    https://mp.weixin.qq.com/s/WvepB3yAzjMbQalO3Z82pQ   介绍RocketChip Instruction解码逻辑的实现.   1. RISC-V   R ...

  6. Javascript中target事件属性,事件的目标节点的获取。

    window.event.srcElement与window.event.target 都是指向触发事件的元素,它是什么就有什么样的属性 srcElement是事件初始化目标html元素对象引用,因为 ...

  7. Spring Boot笔记(五) SpringBoot 集成Lombok 插件

    个人博客网:https://wushaopei.github.io/    (你想要这里多有) 为了减少代码量,为当前项目添加 lombok 来优雅编码 Lombok 插件安装: a . 添加依赖: ...

  8. Linux (一)概述

    认识操作系统 操作系统的作用 把计算机系统中对硬件设备的操作封装起来,供应用软件调用. ​ 2. 常见操作系统        1.2.1 PC端OS ​ 1.2.2  移动端OS ​ 1.2.3  服 ...

  9. Java实现 LeetCode 592 分数加减运算(纯体力活)

    592. 分数加减运算 给定一个表示分数加减运算表达式的字符串,你需要返回一个字符串形式的计算结果. 这个结果应该是不可约分的分数,即最简分数. 如果最终结果是一个整数,例如 2,你需要将它转换成分数 ...

  10. Java实现 LeetCode 116 填充每个节点的下一个右侧节点指针

    116. 填充每个节点的下一个右侧节点指针 给定一个完美二叉树,其所有叶子节点都在同一层,每个父节点都有两个子节点.二叉树定义如下: struct Node { int val; Node *left ...