由于初次接触 webpack(官网),对很多方面都不是很理解,在查找部分资料后记录一下自己的见解(本文实践基于webpack4)。


1. 个人见解

  • 简单来说,webpack就是js的 打包 工具。个人认为比较类似于maven构建,打包java项目。
  • 它能够根据 依赖关系 整合,压缩打包js,通过相关配置还能打包html/css,图片等静态资源文件。(把乱七八糟的文件塞到一块)
  • 打包后的项目,js文件会被整合,减少请求量 。可以压缩内容,提升加载速度,同时具有一定安全性。

2. 安装webpack

2.1 所需环境

安装webpack,首先需要电脑中已经安装了node,npm,这一步就不说了。

2.2 安装步骤

webpack安装方式有 全局安装 和 局部安装 ,两种方式都需要安装一遍。安装较慢的可以使用淘宝镜像cnpm。

并且 webpack4 在安装时需要同时安装两个东西:webpack,webpack-cli(脚手架)。以下是安装方法:

2.2.1全局安装:

npm install webpack webpack-cli -g

2.2.2局部安装:

首先需要在项目(文件夹)根目录 生成package.json 配置文件,cmd进入 根目录,执行(所有选项回车确定即可):

npm init

然后安装webpack:

npm install webpack webpack-cli -s

成功安装后的文件夹目录如下,有 项目依赖包 以及 配置文件:

到这里,我们的安装已经完成了。


3. 简单使用

在 默认配置 中,webpack只会去打包js,入口文件(entry)为:src/index.js,出口文件(output)为:dist/mian.js 。我们就使用默认配置来尝试一下。

3.1 新建index.js:

3.2 执行打包命令

直接在根目录执行命令

webpack

这个时候会看到已经 打包成功,根目录下出现dist(目标文件夹)里面的main.js就是打包好的文件:

但是会出现 警告:

这是因为webpack打包有两种模式,一种是开发模式:development,另一种是生产模式:production。

开发模式下打包的代码是格式化的,可以方便调试;生产模式下则是压缩过的。

在 没有配置 的情况下,它会用生产模式进行打包,但是会报 警告。我们可以在使用 cli命令 的时候,将参数带过去(也可以选择直接在 配置文件 中去设置):

webpack --mode=production

这样就不会报警告了。

3.3 测试

我们直接建一个html文件,然后引入这个生成的js,打开后,可以看到控制台输出的 “hello webpack” 了。


4. 总结

第一次学习webpack,问题还是挺多的,光安装就找了蛮久,因为中文官网找不到相关内容,不同版本之间各种方法也不一样。初步使用之后感觉还是挺好的,对于大的项目来说,webpack打包的确是省事不少。后续慢慢学,还会慢慢记录的~

修正一个错误:官网其实是有详细的介绍的,是自己没看到,需要的小伙伴可以移步 >>  官网指南

这也是自己第一次写博客,写的内容呢也是简单的不能再简单的了,主要是记录一下自己的学习过程,希望能有所成长,同时也能对大家有所帮助(ps:写的都是大家会的,能有什么帮助),总之呢,养成这个习惯吧

友情链接:

webpack学习笔记(一)安装与试用的更多相关文章

  1. CentOS学习笔记--Tomcat安装

    Tomcat安装 通常情况下我们要配置Tomcat是很容易的一件事情,但是如果您要架设多用户多服务的Java虚拟主机就不那么容易了.其中最大的一个问题就是Tomcat执行权限.普通方式配置的Tomca ...

  2. OracleDesigner学习笔记1――安装篇

    OracleDesigner学习笔记1――安装篇   QQ:King MSN:qiutianwh@msn.com Email:qqking@gmail.com 一.       前言 Oracle是当 ...

  3. webpack学习笔记一:安装webpack、webpack-dev-server、内存加载js和html文件、loader处理非js文件

    一 .webpack学习环境准备: 1:window系统 2:安装node.js  官方网址 下载好后下一步下一步安装即可 安装步骤略过....... 3:nrm的安装 打开cmd命令控制台 输入:n ...

  4. 【原】webpack学习笔记

    之前在react的项目中有用过webpack,不过没有认真的去研究,这段时间又重新好好的学习一下webpack,发觉 webpack是一个很强大的东西.而且很好用,方便,接下来主要是做一下学习的笔记 ...

  5. 更博不能忘——webpack学习笔记

    webpack是前端构建系统就像grunt和gulp(之前有学习过grunt所以也就大概明白webpack是个什么东西),所以说前端技术大部分还真是相通的,现在觉得当时多看的东西并不白费,虽然长时间不 ...

  6. CUBRID学习笔记 2 安装教程

    下载地址  http://www.cubrid.org/?mid=downloads&item=any&os=detect&cubrid=9.3.0 选择适合你的服务器版本 l ...

  7. nodejs学习笔记<一>安装及环境搭建

    零零散散学了几天nodejs,进度一直停滞不前,今天沉下心来好好看了下nodejs的介绍和代码.自己也试着玩了下,算是有点入门了. 这里来做个学习笔记. ——————————————————————— ...

  8. docker学习笔记1 -- 安装和配置

    技术资料 docker中文官网:http://www.docker.org.cn/ 中文入门课程:http://www.docker.org.cn/book/docker.html docker学习笔 ...

  9. Webpack学习笔记九 webpack优化总结

    webpack 优化笔记 webpack4 自带的优化包括 swingTree(摇摆树)和作用域提升 swingTree 比如入口文件 index.js引入通用方法 util, 里面有 10个方法, ...

  10. Nginx 学习笔记之安装篇

    在windows下安装Nginx其实非常简单,只需如下几个步骤: 1. 在Nginx官网下载相应版本的安装程序,上面有最新版.稳定版等各种版本,正式运营的项目建议下载最新的稳定版 2.将下载后的压缩包 ...

随机推荐

  1. KSP(坎巴拉)萌新感悟

    1.为什么降落月球等无大气星球时减速为亚轨道之后便不再减速,等到快坠落的时候在满节流阀极限减速最省燃料? 因为我们的dv是确定的,燃料能给我们带来一定量的冲量,却因此可以带来不一定量的动量,显然速度越 ...

  2. centos7_Lnmp编译安装

    17年面试运维岗位的时候,面试官要求输出一份lnmp编译的操作文档,于是有了如下安装nginx+php+mysql,进入正题: 准备环境 环境:centos7.3 软件:nginx-1.12.1 + ...

  3. Angular系列教程之自定义指令

    .markdown-body { line-height: 1.75; font-weight: 400; font-size: 16px; overflow-x: hidden; color: rg ...

  4. SV Interface and Program

    内容 验证平台与待测设计的连接 VTB driver和dut之间的连线通过tb中声明wire连线 通过例化dut的方式进行连接 A module的input连接到B module的output SVT ...

  5. 2023年SWPU NSS 秋季招新赛 (校外赛道) MISC复盘WP

    GIF Code 题目描述: 扫一扫即可获取Flag 给了一个含二维码的动图,分离一下得到九张二维码碎片,根据文件名数字按顺序组装,在线扫码即可 NSSCTF{3f0ac91b-3e0e-a7e2-7 ...

  6. 一 , FileChanle

    package nio; import java.io.IOException; import java.io.RandomAccessFile; import java.nio.ByteBuffer ...

  7. http-长连接

    1. 短链接 http1.0 -- 1个请求-响应过程会创建且1个新的连接 2. 长连接 http1.1 -- 同域下可以创建1个tcp连接,多个请求在同一个tcp上串行处理请求 http2.0 -- ...

  8. Matplotlib.pyplot.scatter 散点图绘制

    Matplotlib.pyplot.plot 绘图 matplotlib.pyplot.scatter(x, y, s=None, c=None, marker=None, cmap=None, no ...

  9. 使用requests爬虫遇到的一个奇葩的问题:UnicodeEncodeError: 'latin-1' codec can't encode character

    每一位成功的程序员,背后也许都站着无数的秃头的男人--为其提供各种开发工具&代码库,当然也包括-- 各种玄学bug-- 玄学的开端 最近在用Python做一个爬虫项目的时候遇到一个很奇怪的问题 ...

  10. [转帖][java] GC (Allocation Failure)日志分析

    日前查看某个程序的日志,发现一直在报GC相关的信息,不确定这样的信息是代表正确还是不正确,所以正好借此机会再复习下GC相关的内容: 以其中一行为例来解读下日志信息: [GC (Allocation F ...