vue3 自动引入 ref reactive...

npm i unplugin-auto-import -D

vite.config.js

javascript 复制代码
import { defineConfig } from 'vite';
import vue from '@vitejs/plugin-vue';
import AutoImport from 'unplugin-auto-import/vite';

export default defineConfig({
  plugins: [
    vue(),
    AutoImport({
      // 自动导入 Vue 相关函数,如:ref, reactive ...
      imports: ['vue', 'vue-router'],
    }),
  ],
});

Q : typescript 报错:'reactive' is not defined.

A : TS 未识别到 vue api,没有相应的模块声明文件, 在 vite 中配置并生成 auto-imports.d.ts ,并在 tsconfig.json 中引入

vite.config.js

javascript 复制代码
export default defineConfig({
  plugins: [
    vue(),
    AutoImport({
      // 自动导入 Vue 相关函数,如:ref, reactive ...
      imports: ['vue'],
      // 生成自动导入的TS声明文件
       dts: "/auto-import.d.ts", 
    }),
  ],
});

tsconfig.json

javascript 复制代码
{
     "include": [
        "src/**/*.d.ts",
        "./*.d.ts",
        "./auto-imports.d.ts" // 导入上一步生成的配置文件
      ],
}

Q: eslint 无法识别报错 error 'reactive' is not defined no-undef

A: 未配置自动导入相应的 eslint 规则, 通过 autoimport 中的配置生成对应 .eslintrc-auto-import.json 配置文件,并在 .eslintrc 中引入

vite.config.js

javascript 复制代码
{
    // ......
     AutoImport({
      imports: ["vue"],
      dts: "/auto-import.d.ts",
      eslintrc: {
        enabled: true,  // 1、改为true用于生成eslint配置。2、生成后改回false,避免重复生成消耗
      },
    }),
}

.eslintrc.js

javascript 复制代码
extends: [
   "./.eslintrc-auto-import.json",
 ],
相关推荐
爱上大树的小猪27 分钟前
【前端基础】深入理解 JavaScript 展开运算符:数组合并与对象浅拷贝实战指南
前端·javascript·vue.js
东方芷兰1 小时前
JavaWeb 课堂笔记 —— 03 Vue
java·前端·javascript·vue.js·笔记
爱的叹息2 小时前
关于 Spring Boot + Vue 前后端开发的打包、测试、监控、预先编译和容器部署 的详细说明,涵盖从开发到生产部署的全流程
vue.js·spring boot·后端
Z编程3 小时前
vue3实现markdown工具栏的点击事件监听
前端·javascript·vue.js
sen_shan3 小时前
Vue3+Vite+TypeScript+Element Plus开发-10.多用户动态加载菜单
vue.js·typescript·vue3·element·element plus·动态菜单·多用户动态加载菜单
刘同学有点忙3 小时前
TypeScript中如何优雅处理ant-design-vue的a-select的默认空值
vue.js·typescript
一颗奇趣蛋3 小时前
前端项目vscode最优配置(vue3+ts)
前端·vue.js
艾克马斯奎普特3 小时前
Vue.js 3 渐进式实现之响应式系统——第八节:调度执行
前端·vue.js
陈奕迅本讯3 小时前
前端-Vue2组件化编程
前端·javascript·vue.js
苏州第一深情4 小时前
【vue+leaflet】自定义控件(五)
前端·javascript·vue.js