首页 > 其他分享 >Webpack5-字体

Webpack5-字体

时间:2024-10-22 14:35:08浏览次数:1  
标签:index Webpack5 src js 字体 import loader css

处理字体图标资源

1. 下载字体图标文件

  1. 打开阿里巴巴矢量图标库

  2. 选择想要的图标添加到购物车,统一下载到本地

2. 添加字体图标资源

  • src/fonts/iconfont.ttf

  • src/fonts/iconfont.woff

  • src/fonts/iconfont.woff2

  • src/css/iconfont.css

    • 注意字体文件路径需要修改
  • src/main.js

import { add } from "./math";
import count from "./js/count";
import sum from "./js/sum";
// 引入资源,Webpack才会对其打包
import "./css/iconfont.css";
import "./css/index.css";
import "./less/index.less";
import "./sass/index.sass";
import "./sass/index.scss";
import "./styl/index.styl";

console.log(count(2, 1));
console.log(sum(1, 2, 3, 4));
  • public/index.html
<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>webpack5</title>
  </head>
  <body>
    <h1>Hello Webpack5</h1>
    <div class="box1"></div>
    <div class="box2"></div>
    <div class="box3"></div>
    <div class="box4"></div>
    <div class="box5"></div>
    <!-- 使用字体图标 -->
    <i class="iconfont icon-arrow-down"></i>
    <i class="iconfont icon-ashbin"></i>
    <i class="iconfont icon-browse"></i>
    <script src="../dist/static/js/main.js"></script>
  </body>
</html>

3. 配置

const path = require("path");

module.exports = {
  entry: "./src/main.js",
  output: {
    path: path.resolve(__dirname, "dist"),
    filename: "static/js/main.js", // 将 js 文件输出到 static/js 目录中
    clean: true, // 自动将上次打包目录资源清空
  },
  module: {
    rules: [
      {
        // 用来匹配 .css 结尾的文件
        test: /\.css$/,
        // use 数组里面 Loader 执行顺序是从右到左
        use: ["style-loader", "css-loader"],
      },
      {
        test: /\.less$/,
        use: ["style-loader", "css-loader", "less-loader"],
      },
      {
        test: /\.s[ac]ss$/,
        use: ["style-loader", "css-loader", "sass-loader"],
      },
      {
        test: /\.styl$/,
        use: ["style-loader", "css-loader", "stylus-loader"],
      },
      {
        test: /\.(png|jpe?g|gif|webp)$/,
        type: "asset",
        parser: {
          dataUrlCondition: {
            maxSize: 10 * 1024, // 小于10kb的图片会被base64处理
          },
        },
        generator: {
          // 将图片文件输出到 static/imgs 目录中
          // 将图片文件命名 [hash:8][ext][query]
          // [hash:8]: hash值取8位
          // [ext]: 使用之前的文件扩展名
          // [query]: 添加之前的query参数
          filename: "static/imgs/[hash:8][ext][query]",
        },
      },
      {
        test: /\.(ttf|woff2?)$/,
        type: "asset/resource",
        generator: {
          filename: "static/media/[hash:8][ext][query]",
        },
      },
    ],
  },
  plugins: [],
  mode: "development",
};

type: "asset/resource"type: "asset"的区别:

  1. type: "asset/resource" 相当于file-loader, 将文件转化成 Webpack 能识别的资源,其他不做处理
  2. type: "asset" 相当于url-loader, 将文件转化成 Webpack 能识别的资源,同时小于某个大小的资源会处理成 data URI 形式

4. 运行指令

npx webpack

打开 index.html 页面查看效果

标签:index,Webpack5,src,js,字体,import,loader,css
From: https://www.cnblogs.com/fanfan-90/p/18492650

相关文章

  • Webpack5-Image
    处理图片资源过去在Webpack4时,我们处理图片资源通过file-loader和url-loader进行处理现在Webpack5已经将两个Loader功能内置到Webpack里了,我们只需要简单配置即可处理图片资源1.配置constpath=require("path");module.exports={entry:"./src/main.js"......
  • Webpack5-修改输出资源的名称和路径
    修改输出资源的名称和路径1.配置constpath=require("path");module.exports={entry:"./src/main.js",output:{path:path.resolve(__dirname,"dist"),filename:"static/js/main.js",//将js文件输出到static/js目录中......
  • Webpack5-css
    处理样式资源本章节我们学习使用Webpack如何处理Css、Less、Sass、Scss、Styl样式资源介绍Webpack本身是不能识别样式资源的,所以我们需要借助Loader来帮助Webpack解析样式资源我们找Loader都应该去官方文档中找到对应的Loader,然后使用官方文档找不到的话,可以从社......
  • 移动端页面字体在微信被放大,导致排版错乱
    微信在iOS和Android平台上对网页字体大小的调整机制不同,需要分别处理。以下是如何在PBootCMS中实现这一功能的详细步骤:1.阻止iOS平台上的字体放大在PBootCMS的模板文件中,找到header.html文件(通常位于/template/你的模板名称/目录下),并在<head>标签内添加以下CSS样式:<style>......
  • Ubuntu系统中,使用matplotlib画图调用times new romain字体报错 findfont: Font family
    画图时报错,缺少字体findfont:Fontfamily['TimesNewRoman']notfound.FallingbacktoDejaVuSans.有两种解决方式:方式一:在线安装msttcorefonts包#安装msttcorefonts包这种方式需要ubuntu能连外网,否则因为访问source-forge失败而告终sudoaptupdatesudoapti......
  • 网站模板怎么修改字体?公司网站地图怎么修改?
    修改网站模板中的字体通过CSS修改打开网站模板的CSS文件。查找与字体相关的样式规则,如 font-family, font-size 等。修改这些属性以应用新的字体设置。例如:body{font-family:'Arial',sans-serif;font-size:16px;}使用内联样式如果模板不支持外......
  • Android 13.0 Launcher3定制之首页时钟小部件字体大小修改
    1.前言在13.0的系统rom产品开发中,在一些Launcher3的定制化开发中,在对于一些小屏幕的产品开发中,在首页添加时钟小部件会显得字体有点小,所以为了整体布局美观就需要改动小部件的布局日期字体的大小来实现整体的布局美观效果,接下来来具体实现相关的功能具体效果图:2.Launcher......
  • 位图字体导入
    ///<summary>///位图字体生成工具///</summary>publicclassBMFontTool{///<summary>///字体生成///</summary>[MenuItem("Assets/BMFont/CreateFont")]staticvoidCreateFont(){stringdirectorPa......
  • 如何修改网站后台字体?公司网站修改网页内容?
    要进行网站栏目模板修改或公司地址修改,通常涉及前端HTML/CSS以及可能的后端逻辑调整。下面分别介绍这两种情况的处理方法:网站栏目模板修改定位模板文件找到存放网站栏目的模板文件,这通常位于网站的前端目录下,如templates文件夹内。备份原有文件修改前,请先备份原有的模......
  • qt5报错无法枚举xxx字体:qt.qpa.fonts: Unable to enumerate family ' "WenYue XinQing
    问题描述:使用qt5时,出现错误提示:qt.qpa.fonts:Unabletoenumeratefamily'"WenYueXinQingNianTi(Non-CommercialUse)"'虽然不影响正常使用,但是还是希望解决。猜测:可能是qt5在自动枚举字体时,系统中安装的字体名称过长或其他参数不合规导致qt5无法枚举。如果此字体不是项......