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",
 ],
相关推荐
一枚小小程序员哈18 分钟前
基于Vue + Node能源采购系统的设计与实现/基于express的能源管理系统#node.js
vue.js·node.js·express
一枚小小程序员哈5 小时前
基于Vue的个人博客网站的设计与实现/基于node.js的博客系统的设计与实现#express框架、vscode
vue.js·node.js·express
定栓5 小时前
vue3入门-v-model、ref和reactive讲解
前端·javascript·vue.js
LIUENG6 小时前
Vue3 响应式原理
前端·vue.js
wycode7 小时前
Vue2实践(3)之用component做一个动态表单(二)
前端·javascript·vue.js
wycode8 小时前
Vue2实践(2)之用component做一个动态表单(一)
前端·javascript·vue.js
第七种黄昏8 小时前
Vue3 中的 ref、模板引用和 defineExpose 详解
前端·javascript·vue.js
pepedd8649 小时前
还在开发vue2老项目吗?本文带你梳理vue版本区别
前端·vue.js·trae
前端缘梦9 小时前
深入理解 Vue 中的虚拟 DOM:原理与实战价值
前端·vue.js·面试
HWL56799 小时前
pnpm(Performant npm)的安装
前端·vue.js·npm·node.js