1. 处理 less 文件

步骤:
1 安装包: npm i -D less-loader lessnpm i -D style-loader css-loader
2 在 webpack.config.js 的 module 中添加一个规则

2. 处理图片文件 url-loader 或者 file-loader

file-loader 对图片进行重命名,然后,加载图片

 1 安装: npm i -D file-loader2 在 webpack.config.js 中的 module 里面添加一个rules

自己写的路径为:../imgs/a.jpg

文件路径被重命名为: 1ddb3677198212f7fea7ca4b9de18dcb.jpg

原理:

MD5 加密算法(消息摘要算法) 通常就是 32 位

对于同一个文件或者字符,不管使用 md5 处理过多少次,那么,得到的 32位字符串都是相同的

在 file-loader 中,使用 md5 处理后,对于同一张不同名称的图片,只会加载一次,而如果不进行 md5 处理,就会加载两次,而这两张图片实际上就是同一张,实际上加载一次就可以了,这样的话,可以达到减少网络请求,加快网站的加载速度。

MD5 在项目中,一般可以用来进行密码加密处理

用户名 + 密码 ====> md5( 密码 ) ===> 1ddb3677198212f7fea7ca4b9de18dcb => 存储到数据库中

推荐使用 url-loader

1 安装: npm i -D url-loader最好将 file-loader 一起安装
2 在 webpack.config.js 中,只要将 file-loader 替换为 url-loader 就可以了

url-loader 默认情况下,会将图片处理为base64编码的格式,base64 适合处理小图标,直接内嵌在页面中,减少了请求次数

data:image/png;base64, ....

.babelrc
{"presets": ["env", "stage-2"]
}

babel 是一个JS编译器,能够将最新的JS语法转化为浏览器能够识别的代码

 npm i -D babel-core babel-loader@7 babel-preset-env babel-preset-stage-2

3. webpack.config.js

// 注意: 不要使用 ES6 中的模块化语法 import/export
const path = require('path')
// const webpack = require('webpack')// 导入html-webpack-plugin
const HtmlWebpackPlugin = require('html-webpack-plugin')// 处理Vue单文件组件的插件
const VueLoaderPlugin = require('vue-loader/lib/plugin')module.exports = {// 入口entry: path.join(__dirname, './src/main.js'),// 出口output: {path: path.join(__dirname, './dist'),filename: 'bundle.js'},// 模式mode: 'development',devServer: {// 自动打开浏览器open: true,// 修改端口号port: 3000// 热更新: 只将修改过得内容加载到页面中, 而不是刷新整个页面// 第一步:// hot: true},// 配置loadermodule: {rules: [// test 是一个正则, 用来匹配加载文件的路径//  比如: import './css/index.css'// use 表示使用哪个loader来处理这个类型的文件// 注意: 有顺序!!!// 处理过程是: 从右往左// css-loader 读取CSS文件,将其转化为一个模块// style-loader 拿到css-loader读取到的css文件内容,然后,创建一个style标签,插入到head{ test: /\.css$/, use: ['style-loader', 'css-loader'] },{ test: /\.less$/, use: ['style-loader', 'css-loader', 'less-loader'] },// 处理图片// {//   test: /\.(jpg|jpeg|png|gif)$/,//   use: 'file-loader'// },{test: /\.(jpg|jpeg|png|gif)$/,// use: 'url-loader'use: [{loader: 'url-loader',options: {// 单位:字节, 8Kb// 如果图片的大小比 8kb 小,图片就会被处理为 base64// 如果图片的大小大于或等于 8kb ,url-loader会自动调用 file-loader 来对图片重命名处理// limit: 8192limit: 49877}}]},// 处理字体{test: /\.(eot|svg|ttf|woff|woff2|otf)$/,// use: 'file-loader'use: 'url-loader'},// 配置babel{test: /\.js$/,use: 'babel-loader',// 排除掉不需要 babel 处理的文件路径// 一般,都会将 node_modules 排除掉exclude: /node_modules/},// 处理Vue单文件组件{test: /\.vue$/,use: 'vue-loader'}]},plugins: [// 第二步:// new webpack.HotModuleReplacementPlugin(),new HtmlWebpackPlugin({// 指定模板文件路径template: path.join(__dirname, 'index.html')}),new VueLoaderPlugin()]
}

webpack处理less、图片和字体相关推荐

  1. webpack打包:文件+图片+图标字体......

    webpack是什么? webpack本质是一个第三方的模块包,用于分析,并打包代码. 支持所有类型的文件包 支持less/sass转换成css 支持ES6/7/8降级为ES5:(为什么降级?是为了更 ...

  2. webpack加载器打包样式表中的图片和字体

    前言 index.html代码 <!DOCTYPE html> <html lang="en"> <head><meta charset= ...

  3. webpack笔记一:webpack的介绍,安装,加载css、图片、字体等

    写在前面的话: 在当前grunt.gulp.webpack成为日常工具的情况下,如果你还只是熟练的使用html.css和激块瑞的话,已经远远不能满足项目的需求,所以你得变强,你需要懂得更多.现在前端不 ...

  4. webpack:url-loader打包后找不到图片、字体路径问题

    项目在css中引用图片,打包之后找不到对应的图片和字体路径         打包配置文件的路径配置:project/config/index.js 对应的图片打包配置:project/build/we ...

  5. 配置 postCSS 自动添加 css 的兼容前缀||打包样式表中的图片和字体文件||打包处理 js 文件中的高级语法

    配置 postCSS 自动添加 css 的兼容前缀 ① 运行 npm i postcss-loader autoprefixer -D 命令 ② 在项目根目录中创建 postcss 的配置文件 pos ...

  6. html字体库otf文件使用,在webpack中加载.otf字体文件的正确方法是什么?

    使用webpack时加载.otf字体文件的适当方式是什么?我曾多次尝试包括在我的webpack.config.js的规则,没有任何成功的基础上,很多例子我大致如下的线路看出:对于在webpack中加载 ...

  7. webpack将部分图片打包后转化为base64

    webpack将部分图片打包后转化为base64主要依靠url-loader实现. 使用步骤: 安装url-loader: npm install url-loader -D webpack配置 {t ...

  8. 如何保存meme的网页图片_Meme图片的字体用途是什么(以及如何制作它们?)

    如何保存meme的网页图片 Meme pictures, recognizable photos with sayings applied over top, pop up everywhere fr ...

  9. 小程序 canvas 海报(图片、字体封装方法)解决导出海报模糊问题

    最近真是画了一堆canvas海报画到头秃~~~(偷偷说!!产品经理我恨你!!) 来和大家分享一波本媛写的canvas方法封装 1.封装图片 //width:图片长度 //height:图片高度 //x ...

  10. R语言ggplot2可视化改变字体大小实战:单个图片设置字体大小、全局设置字体大小

    R语言ggplot2可视化改变字体大小实战:单个图片设置字体大小.全局设置字体大小 目录

最新文章

  1. [ python ] 类的组合
  2. Digg 让 八 动起来,让 八 产生价值
  3. 17.观察者模式(Observer Pattern)
  4. Linux 用户篇——用户管理的配置文件
  5. C#怎么给新建的winform程序添加资源文件夹Resources
  6. 前端程序员容易忽视的一些基础知识
  7. oracle数sqlplus,sqlplus查询oracle数据库数据容量
  8. LeetCode刷题 --杂篇 --数组,链表,栈,队列
  9. 测试用例的八大设计方法
  10. GTK+图形化应用程序开发学习笔记(六)—按钮
  11. 【图像分割】基于matlab粒子群优化T熵图像分割【含Matlab源码 286期】
  12. 线性规划 | 用实例展示Matlab和lingo求解线性规划问题的差异
  13. 【模拟电子技术基础】学习笔记 第一章 半导体二极管
  14. 科技赋能时代 用ocr身份证识别
  15. matlab 短时能量计算+源代码
  16. java中,HashMap为什么每次扩容的倍数是2,而不是1.5或者2.5?
  17. 从《计算机网络》到TCP/IP
  18. iOS之深入解析App Thinning的应用瘦身优化
  19. [转]跨站漏洞解析及预防
  20. Python读取 npy, npz, h5, pkl 文件

热门文章

  1. MongoDB账户密码设置
  2. uni-app小程序分享自定义全局设置,分享朋友,分享朋友圈(亲测有效!!!)
  3. 海马汽车经销商管理系统技术解析(六)顾客生日祝贺
  4. uhs3内存卡有哪些_内存卡SD卡有哪些类型详细区别介绍
  5. 小例子带你深撅直播流技术
  6. 大数据学习-2.CentOS7的基本配置
  7. CentOS7的LVM动态扩容
  8. VMware 卡顿 ,关闭侧通道缓解
  9. 易学之始——河图、洛书
  10. 视频播放器制作学习之旅----迷途羔羊(DirectDraw DirectShow)