vue3 自动引入 ref reactive...

发布时间:2024年01月24日

npm i unplugin-auto-import -D

vite.config.js

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

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

tsconfig.json

{
     "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

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

.eslintrc.js

extends: [
   "./.eslintrc-auto-import.json",
 ],

文章来源:https://blog.csdn.net/zhaojjjjjj163/article/details/135813319
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。