vue | vue-macros 插件升级以及配置
Vue Macros 是一个为 Vue.js 提供更多宏和语法糖的开源项目vue-macros/vue-macros: Explore and extend more macros and syntax sugar to Vue.
问题:npm run build-only 打包时,报错:[Vue] Load plugin failed: vue-macros/volar
排查发现:unplugin-vue-macros 已不再使用,已升级vue-macros,部分代码需要重新配置。
解决:根据官方文档 Bundler Integration | Vue Macros
① 进行 node和vue升级(到20.18以上),
nvm install latest # 安装最新版nvm use latest # 切换到最新版node -v # 检查 Node 版本npm -v # 检查 npm 版本
② 进行 配置(ts.config.json 和 vite.config.ts,代码如下)
// vite.config.ts
import Vue from '@vitejs/plugin-vue'
import VueMacros from 'vue-macros/vite'
// import VueJsx from '@vitejs/plugin-vue-jsx'
// import VueRouter from 'unplugin-vue-router/vite'export default defineConfig({plugins: [VueMacros({plugins: {vue: Vue(),// vueJsx: VueJsx(), // if needed// vueRouter: VueRouter({ // if needed// extensions: ['.vue', '.setup.tsx']// })},// overrides plugin options}),],
})
// tsconfig.json
{"compilerOptions": {// ..."types": ["vue-macros/macros-global" /* ... */]},"vueCompilerOptions": {"plugins": ["vue-macros/volar"],},
}
注意:如果有多个 ts 配置文件 都要改。
参考:
Bundler Integration | Vue Macros前端 Vite 项目使用 vite-plugin-dts 打包输出类型文件,处理踩坑:Cannot find module 'vue'. Did you ... - 掘金
Vue Macros 项目常见问题解决方案-CSDN博客