vue3项目中如何实现模块的自动导入

本文介绍了Vue2向Vue3迁移时,如何通过unplugin-auto-import插件实现按需引入和自动导入功能,包括在vite.config.ts中的配置,以及如何处理第三方库如axios和vue-router的自动导入。同时提到了可能遇到的编译提示问题及解决方法。
摘要由CSDN通过智能技术生成

vue2和vue3一个很重要的代码区别就是从vue2对象化完整引入函数化按需引入。从而解决了需要什么就引入什么的按需引入操作功能。

然而这一代码操作模式却也引出了后续繁琐代码的书写结构

虽然现在绝大数开发工具都对未引入的内容进行语法错误提示,并提供快速修复。操作提示与协助自动引入对象的功能实现,但这也不能成为我们会喜欢编写如此繁琐代码内容的理由。所有,是否有不需要引入就可以直接使用。提高开发效率的重要问题。

我们可以使用auto.imports,这一插件可以帮助我们进行对象的自动引入操作,这样同样可以省却人工进行代码模式引入处理。在vue3项目中安装auto.imports插件,并且修改vite.config.ts配置文件,引入改插件声明成AutoImport

(1)安装

npm install unplugin-auto-import --save-dev
yarn add unplugin-auto-import --dev

(2)在plugins调用此插件,需要重点注意两个参数:

  • 其一是dts要设置为true,该属性会在配置文件修改完并重启项目以后,在项目根目录会生成一个auto.imports.d.ts自动导入模块的配置文件。
  • 当然,如果想在归中所有,可以进行自动导入的模块进行支持操作,则需要设置import:["vue"]。
import { defineConfig } from "vite";
import vue from "@vitejs/plugin-vue";
import AutoImport from 'unplugin-auto-import/vite';
 
export default defineConfig({
    plugins:[
        vue(),
        AutoImport({
            dts:true,
            imports:["vue"],
        })
    ],
});

现在通过npm run dev重启项目,并修改项目中的代码内容。将我们手动引入的代码进行删除,程序也能够进行完美的执行。

那么此时也有个疑问,那么对于第三方类库与第三方插件是否也能够支持自动导入???例如axios以及第三方插件vue-router等。

(1)首先我们需要进行模块安装

npm i axios
npm install vue-router

(2)修改vite.config.ts

import { defineConfig } from "vite";
import vue from "@vitejs/plugin-vue";
import AutoImport from 'unplugin-auto-import/vite';
 
export default defineConfig({
    plugins:[
        vue(),
        AutoImport({
            dts:true,
            imports:[
                "vue",
                "vue-router",
                { axios: [['default','axios']] }
            ],
        })
    ],
});

经过以上配置,我们就可以在项目中进行axios或vue-router的直接调用。

不过在编辑的过程中,可以会有找不到模块对应内容的提示,虽然提示信息并不会影响程序执行的结果,但是代码的开发体验受到了极大的影响,

(3)可以尝试修改tsconfig.json文件。

设置文件中的include数组部分,这样当前项目能够利用这一描述文件进行资源的查找操作,而不会产生无法找到自动导入的函数模块内容。

"include":[
    "src/**/*.ts",
    "src/**/*.d.ts",
    "src/**/*.tsx",
    "src/**/*.vue",
    "auto-imports.d.ts"
]

  • 9
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值