当前位置: 首页 > news >正文

webpack的使用

1、webpack使用基本

  1. 首先需要 全局安装 官网都有 这里就不多说了

npm install webpack -g
//  需要4.0再装个cli
npm install --save-dev webpack-cli
复制代码

   2.创建个项目 

// 初始化
npm init -y
//  需要有个 webpack.config.js
复制代码


// 然后里面
// main.js 入口文件
const path = require('path')

module.exports = {
  entry: path.join(__dirname , './src/main.js'),  // 入口 表示要使用webpack打包哪个文件
  output: {
    path: path.join(__dirname, './dist'),  // 指定打包好的文件输出到哪里
    filename: 'bundle.js'  // 指定输出文件的名称
  },
  externals: {  // 不编译某些模块 可引入cdn
    jquery: 'jQuery'   
  }
}复制代码

2、实现实时编译更新功能

(1) 直接在 package.json中一句话

//  首先需要安装 webpack-dev-server  插件,但是只安装这个不行,因为它依赖 webpack这个插件所以
npm install webpack-dev-server -D
npm install webpack -D
npm install webpack-cli -D // 4.0版本需要在安装这个cli 否则报错

复制代码

在 package.json 中配置

// 实现热更新 和更改端口
"dev": "webpack-dev-server --open --port 3000 --hot"复制代码


(2)第二种方式麻烦

"dev": "webpack-dev-server"// 首先在 webpack.config.js 中配置devserver
如下图复制代码


3、html-webpack-plugin 的使用

  1. 先安装

 npm install html-webpack-plugin -D

复制代码

  2、导入在webpack.config.js 里


4、处理 css文件的 loader 文件 style-loader css-loader

  1. 先安装

// 首先安装
npm install style-loader css-loader -D复制代码

    2、在webpack.config.js 里配置

module对象身上有个 rules属性,这个rules属性是个数组,存放了所有第三方文件的匹配和处理规则

  这些loader调用规则从右到左 即 css-loader -> style-loader


5、处理 less文件 less-loader

1、先安装

npm install less-loader -D
npm install less -D复制代码

2、在webpack.config.js 里配置

这些loader调用规则从右到左 即 less-loader ->css-loader -> style-loader


6、处理 scss文件 scss-loader

1、先安装

npm install sass-loader -D
npm install node-sass -D复制代码

2、在webpack.config.js 里配置

这些loader调用规则从右到左 即 sass-loader ->css-loader -> style-loader


7、处理图片 的loader  url-loader file-loader

1、先安装

npm install url-loader file-loader -D复制代码

2、在webpack.config.js 里配置


3、图片会被转为base64 如何不转呢? 上面的 30是 30字节,

给传参 limit值,如果图片小于limit值,会被转为base64,如果>=则不会转为base64

8、处理字体文件的


9、重要的 es6+ => es5 bable-loader

1、先安装

npm insatll babel-core -D
npm install babel-loader -D
// 注释 babel-loader@71.15  8.0版本报错
npm install babel-preset-es2015 -D复制代码

2、建立.babelrc 文件

3、在webpack.config.js 里配置



转载于:https://juejin.im/post/5be40e8de51d457e901943ea

相关文章:

  • 最详细的Log4j使用教程
  • Javascript 对象 - 数学对象
  • 浅析微信支付:申请退款、退款回调接口、查询退款
  • 都是用 DllImport?有没有考虑过自己写一个 extern 方法?
  • python实现将json数据以json格式写入txt文件
  • 【笔记】Nginx热更新相关知识
  • 简单读!spring-mvc源码之穿越http请求
  • C++与Rust操作裸指针的比较
  • 团队项目的NABCD的分析
  • .net core 依赖注入的基本用发
  • win10驱动下获取cpu信息
  • 闭包--闭包之tab栏切换(四)
  • 单据类报表的制作
  • Spring Boot(1)
  • mac终端常用命令
  • 【腾讯Bugly干货分享】从0到1打造直播 App
  • flask接收请求并推入栈
  • learning koa2.x
  • magento 货币换算
  • Transformer-XL: Unleashing the Potential of Attention Models
  • vue从创建到完整的饿了么(11)组件的使用(svg图标及watch的简单使用)
  • 程序员最讨厌的9句话,你可有补充?
  • 从0到1:PostCSS 插件开发最佳实践
  • 紧急通知:《观止-微软》请在经管柜购买!
  • 开源中国专访:Chameleon原理首发,其它跨多端统一框架都是假的?
  • 它承受着该等级不该有的简单, leetcode 564 寻找最近的回文数
  • 微信小程序实战练习(仿五洲到家微信版)
  • 为视图添加丝滑的水波纹
  • 物联网链路协议
  • 正则表达式
  • 说说我为什么看好Spring Cloud Alibaba
  • ​比特币大跌的 2 个原因
  • ​直流电和交流电有什么区别为什么这个时候又要变成直流电呢?交流转换到直流(整流器)直流变交流(逆变器)​
  • #[Composer学习笔记]Part1:安装composer并通过composer创建一个项目
  • #我与Java虚拟机的故事#连载06:收获颇多的经典之作
  • #我与Java虚拟机的故事#连载12:一本书带我深入Java领域
  • (07)Hive——窗口函数详解
  • (C语言)共用体union的用法举例
  • (保姆级教程)Mysql中索引、触发器、存储过程、存储函数的概念、作用,以及如何使用索引、存储过程,代码操作演示
  • (七)Java对象在Hibernate持久化层的状态
  • (三)centos7案例实战—vmware虚拟机硬盘挂载与卸载
  • (三)终结任务
  • (转)nsfocus-绿盟科技笔试题目
  • .CSS-hover 的解释
  • .net 简单实现MD5
  • .xml 下拉列表_RecyclerView嵌套recyclerview实现二级下拉列表,包含自定义IOS对话框...
  • ::before和::after 常见的用法
  • @Import注解详解
  • @RequestMapping处理请求异常
  • @取消转义
  • [ vulhub漏洞复现篇 ] ECShop 2.x / 3.x SQL注入/远程执行代码漏洞 xianzhi-2017-02-82239600
  • [] 与 [[]], -gt 与 > 的比较
  • [C/C++]数据结构 栈和队列()
  • [C++]类和对象【上篇】
  • [Design Pattern] 工厂方法模式