问题报错:Syntax Error: Reading from "virtual:uno.css" is not handled by plugins (Unhandled scheme). Webpack supports "data:" and "file:" URIs by default. You may need an additional plugin to handle "virtual:" URIs.
解决方案:main.js 引入 unocss使用以下引入方法
import 'uno.css';
补充:第一次运行unocss生效,热更新不生效解决方案,参考以下配置:
配置 vue.config.js
const UnoCSS = require('@unocss/webpack').default;
module.exports = {
configureWebpack: {
plugins: [
UnoCSS()
],
optimization: {
realContentHash: true
}
},
css: {
extract: {
filename: 'css/[name].[contenthash].css',
chunkFilename: 'css/[name].[contenthash].chunk.css'
}
}
}
配置 uno.config.js
import { defineConfig } from 'unocss';
import presetUno from '@unocss/preset-uno';
export default defineConfig({
content: {
filesystem: [
'src/**/*.vue', // 所有 Vue 组件
'src/**/*.js', // JS 文件中动态生成的类名(如 :class="`text-${size}`")
'public/index.html' // HTML 中的类名
],
},
extract: {
// 输出路径需与 Vue CLI 的 CSS 提取路径一致(避免被忽略)
filename: 'css/uno.[contenthash].css',
chunkFilename: 'css/uno.[contenthash].chunk.css'
},
// 预设(必选,提供基础工具类)
presets: [
presetUno(), // 类似 Tailwind 的工具类
]
})