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
    评论
Vue 3使用Protobuf插件来自动生成Protobuf文件,可以通过以下步骤进行: 1. 首先,确保您已经安装了Vue 3项目所需的依赖,包括protobufjs和protobufjs/cli。您可以使用以下命令进行安装: ``` npm install protobufjs protobufjs/cli --save-dev ``` 2. 创建一个.proto文件,该文件定义了您的消息类型和服务等。例如,创建一个名为example.proto的文件,在其定义您的消息类型和服务: ```protobuf syntax = "proto3"; package example; message User { string name = 1; int32 age = 2; } service UserService { rpc GetUser(UserRequest) returns (UserResponse); } message UserRequest { string userId = 1; } message UserResponse { User user = 1; } ``` 3. 在项目的根目录下创建一个脚本文件,例如generate-protobuf.js,用来运行protobufjs/cli来生成Protobuf文件。在脚本文件添加以下内容: ```javascript const pbjs = require('protobufjs/cli/pbjs');const pbts = require('protobufjs/cli/pbts'); const fs = require('fs'); const protoFile = 'example.proto'; const outputDir = 'src/protobuf'; pbjs.main(['-t', 'static-module', '-w', 'commonjs', '-o', `${outputDir}/example.js`, protoFile], (err, output) => { if (err) { console.error(err); return; } console.log(output); pbts.main(['-o', `${outputDir}/example.d.ts`, `${outputDir}/example.js`], (err, output) => { if (err) { console.error(err); return; } console.log(output); }); }); ``` 4. 运行脚本文件以生成Protobuf文件。在命令行执行以下命令: ``` node generate-protobuf.js ``` 这将使用protobufjs/cli来生成相应的.js和.d.ts文件,并将其输出到指定的目录(在上述示例为src/protobuf)。 5. 现在,您可以在Vue 3项目使用生成的Protobuf文件。在需要使用Protobuf的组件模块导入生成的.js和.d.ts文件,并使用其定义的消息类型和服务等。 ```javascript import { User, UserRequest, UserResponse } from '@/protobuf/example'; // 使用生成的Protobuf消息类型和服务等 const user = new User(); user.name = 'John'; user.age = 25; const userRequest = new UserRequest(); userRequest.userId = '123'; // ... ``` 通过上述步骤,您可以在Vue 3项目使用Protobuf插件来自动生成Protobuf文件,并使用生成的文件来进行Protobuf相关的操作。请确保按照您的项目结构和需要进行适当的调整。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值