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

Rule.issuer(通过父路径配置loader处理器)

说明

正常在设置loader配置规则时,都是通过文件后缀来配置的
issuer的作用是可以通过父级的路径,设置生效的匹配规则

  • 与rule的差别
    test: 匹配当前模块的路径(如 .css 文件)
    == issuer:== 匹配引入当前模块的父模块的路径(如引入 .css 的 .js 文件)
  • 例如
  • 如果 css 中的 c.js通过 import '…/css1/c1.css’引入了c1.css,则 c1.css的 issuer 是 目录css

代码配置

  • webpack.config.js
const path = require('path');
module.exports = {entry: "./src/index.js",output: {path: path.resolve(__dirname, 'dist1'),publicPath: "/dist1/"},module: {rules: [{test: /\.css$/,use: ['style-loader', 'css-loader'],issuer: {// 仅当父模块位于 css/ 目录时生效and: [/css/],}},]},optimization: {minimize: false}
}
  • index.js
import './css2/c2.css'
import './css/c.js'
const index = () => {a()alert('this is index')
}
index()
  • css/c.js
import '../css1/c1.css'

*css1/c1.css

body {background-color: blue;
}
  • css2/c2.css
body {background-color: red;
}

效果展示

  1. 因为打包配置了issuer为 /css/ ,所以index.js中引入了 import ‘./css2/c2.css’ 打包时会因为没有匹配到rules报错
    在这里插入图片描述
  2. c1.css 会被打包成功
    在这里插入图片描述
    在这里插入图片描述
  3. 运行展示时,页面的背景色为蓝色,说明配置的针对 /css/ 目录下的如果引入.css文件时,会用 style-loader,css-loader对其进行处理

在这里插入图片描述

相关文章:

  • 启动你的RocketMQ之旅(五)-Broker详细——消息传输
  • 学习Spire.Office for Java版本的科学实践
  • 硬件须知的基本问题2
  • Claude系列模型-20250426
  • 系统架构设计中的ATAM方法:理论、实践与深度剖析
  • AWS中国区ICP备案全攻略:流程、注意事项与最佳实践
  • Power BI企业运营分析——BCG分析
  • 1软考系统架构设计师:第一章系统架构概述 - 超简记忆要点、知识体系全解、考点深度解析、真题训练附答案及解析
  • 【教程】Docker运行gitlab容器
  • w307MES生产制造执行系统设计与实现
  • Unity AssetBundle (AB) 打包详解
  • 【新技术】微软 Azure Test Impact Analyzer (TIA) 全面解析
  • 29-算法打卡-字符串-KMP算法理论2-第二十九天
  • Adobe Photoshop(PS)2022 版安装与下载教程
  • 一篇入门之-评分卡变量分箱(卡方分箱、决策树分箱、KS分箱等)实操例子
  • CSS预处理器
  • 如何快速轻松地恢复未保存的 Word 文档:简短指南
  • 【2025 最新前沿 MCP 教程 04】通信渠道:理解 MCP 传输机制
  • AEB法规升级后的市场预测与分析:技术迭代、政策驱动与产业变革
  • MySQL 常用语句教程
  • 六朝文物草连空——丹阳句容南朝石刻考察纪
  • 对话|男篮国手杨瀚森:参加NBA选秀,去更大的舞台追梦
  • 从“高阶智驾”到“辅助驾驶”,上海车展上的“智驾”宣发变调
  • 国防部:“台独”武装摆练纯属搞心理安慰,怎么演都是溃败的死局
  • 上海市进一步支持汽车置换更新!一图读懂补贴政策实施细则
  • 乌克兰关切有中国公司帮助俄罗斯制造军事硬件,外交部:坚决反对无端指责