webpack01

万物皆对象

webpack 4 以上的版本

npm  全称 node package manager (node 包管理工具)

webpack 是 node 的,所以他遵循 node 语法

webpack 安装

1. 本地安装

npm i webpack webpack-cli -D

2. 全局安装

npm i webpack webpack-cli -g -D

webpack-cli , webpack 的脚手架,实现了部分功能的优化

1. 可以 0 配置(也就是说我们可以不建 webpack.config.js 文件,自带了一些功能的实现)

比如:我们可以直接使用 npx webpack 指令之后,将当前 src 目录下的 index.js 文件 打包成 在dist 目录下的 main.js 文件

但是,由于只实现了部分优化,一是功能少,二是不够灵活,所以还是需要我们来对环境的配置

2. 我们如何分辨开发环境,还是生产环境?

看文件属于什么类:工具类的一般都属于开发环境,插件类的一般都属于生产环境

3. 我们如何分辨 旧版本 和 新版本的 webpack

通过 npx 指令  npx webpack 代表新版本的 webpack   webpack 代表旧版本的 webpack

4. 自己手动的配置 webpack.config.js 文件

var path=require(“path”);    // node 自带的插件 用于对路径的处理

var Htmlwebpackplugin=require(“html-webpack-plugin”);  // 对 html 文件处理的插件

module.exports={

entry:{

index:"./index.js",

app:"./app.js"

},    // entry 代表入口文件,(也就是要被打包的文件)

// 属性值 可以是代表一个文件的 字符串,也可以是代表对象来表示多个文件

output:{

filename:"[name].js"   // filename 代表出口的文件名,(就是打包后的文件), 如果是多个文件,我们一定要这么写

path:path.resolve(“dist”)    // 路径  因为是绝对路径,所以我们需要使用 node 中自带的模板,path.resolve 就会找到当前目录下的绝对路径

},

mode:"",  // 这个是新版本 webpack 新增的配置属性 如果不写的话,就会给出警告,属性值就两个,porduction 压缩, development 未压缩版

module:{}  // 我们模块配置所依赖的包 如 在 npm 官网中 输入 css-loader

plugins:[

new Htmlwebpackplugin({

filename:"./index.html",    // 编译后的 html 文件

template:“index.html”,    // 编译前地 html 文件

minify:{

collapseWhitespace:true  // 将 html 文件压缩为一行

},

chunks:[“index”,“app”]    // 依赖的 js 文件 与 entry 中的属性 保持一致

})

]  // 开发过程中所依赖的插件 如:html-webpack-plugin 插件为例

devServer:{

open:true,  // 自动打开浏览器

contentBase:""  // 配置根目录

}

}

如果我们想使用 webpack 中的虚拟服务器,我们需要下载文件  webpack-dev-server

1. 下载:npm i webpack-dev-server -D

2. 启动指令:webpack-dev-server

如果想使用 npm run 来启动指令:

我们需要在 package.json 中的 script 中设置

“start”:“webpack-dev-server”  // start 随意起名

“dev”:“npx webpack” // dev 随意起名

启动指令

npm start

npm run dev

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值