vite配置一个css插件

vite.config.js的plugins执行函数

该例子只是替换一些css,具体内容不重要,主要看形参的运用

复制代码
// vite-plugin-css.js
export default function cssPlugin() {
  return {
    name: 'vite-plugin-css-post', // 插件的名字,Vite 插件必须有名字
    enforce: 'post', // 设定插件执行的时机,pre 表示在 Vite 的 CSS 预处理之前
    transform(css, id) {
      if (id.endsWith('.css')) {
        // 在这里处理 CSS 文件内容
        console.log('======文件post', id);
        css = css.replace(/\*:not\([^\)]+\),.*?::file-selector-button/g, function (res) {
          return '*'
        });


        css = css.replace(/:not\(#[^\)].*?\)/g, function (res, a) {
          return ''
        });
        return {
          code: css, // 返回处理后的 CSS 内容
          map: null, // 如果需要支持 sourcemaps,可以返回 sourcemap 数据
        };
      }

      return null; // 如果文件不是 .css 文件,返回 null
    },
  };
}
相关推荐
xiaotao1313 小时前
第九章:Vite API 参考手册
前端·vite·前端打包
午安~婉4 小时前
Electron桌面应用聊天(续)
前端·javascript·electron
彧翎Pro4 小时前
基于 RO1 noetic 配置 robosense Helios 32(速腾) & xsense mti 300
前端·jvm
小码哥_常4 小时前
解锁系统设置新姿势:Activity嵌入全解析
前端
之歆5 小时前
前端存储方案对比:Cookie-Session-LocalStorage-IndexedDB
前端
哟哟耶耶5 小时前
vue3-单文件组件css功能(:deep,:slotted,:global,useCssModule,v-bind)
前端·javascript·css
是罐装可乐5 小时前
深入理解“句柄(Handle)“:从浏览器安全到文件系统访问
前端·javascript·安全
华科易迅5 小时前
Vue如何集成封装Axios
前端·javascript·vue.js
康一夏5 小时前
Next.js 13变化有多大?
前端·react·nextjs
糖炒栗子03265 小时前
前端项目标准环境搭建与启动
前端