vue3中unplugin-auto-import自动引入示例代码

 更新时间:2023年02月07日 10:00:05   作者:程序员小白Aven  
unplugin-auto-import 这个插件是为了解决在开发中的导入问题,下面这篇文章主要给大家介绍了关于vue3中unplugin-auto-import自动引入的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下

vue3日常项目中定义变量需要引入ref,reactive等等比较麻烦,可以通过unplugin-auto-import给我们自动引入

1、安装

npm i -D unplugin-auto-import

2、在vite.config.ts中引入

import AutoImport from 'unplugin-auto-import/vite'

并在plugins中配置:

export default defineConfig({
        plugins: [
            ......
            AutoImport({  
              imports: ['vue'],
              dts: 'src/auto-import.d.ts',
            })
        ]
})

AutoImport中可以有很多配置项,可以到github中看详细配置:

GitHub - antfu/unplugin-auto-import: Auto import APIs on-demand for Vite, Webpack and Rollup

注:dts是帮我们生成的类型声明文件,直接使用会找不到

上面配置完毕后会在src目录下生成一个auto-import.d.ts文件,里面帮我们自动引入vue相关内容,我们可以在项目中直接使用。

注意:上面配置完毕dts后可能并不会自动生成auto-import.d.ts文件,可以重新运行一下项目,或者关闭编辑器重新打开运行即可。

使用如下:

<script setup lang="ts">
  // 这里我们不用引入ref直接使用
  const msg = ref<string>('Hello Vue3')
</script>
 
<template>
  {{ msg }}
</template>
 
<style scoped lang="scss"></style>

补充:unplugin-auto-import自动导入TS2304警告问题

1.前置配置

通过vite.config.js配置自动导入API

export default defineConfig({
	plugins: [
		vue(),
		AutoImport({
			resolvers: [ElementPlusResolver()],
			imports: ['vue', 'vue-router', 'pinia'],
			eslintrc: {
				enabled: false,
				filepath: './.eslintrc-auto-import.json',
				globalsPropValue: true,
			},
		})
	]
})

生成文件:auto-imports.d.ts

2. TS2304

此时代码中编写时会遇到TS的警告。Cannot find name 'ref'.ts(2304)

3.解决方案

ts.config.json文件引入声明文件: include中引入auto-imports.d.ts

{
  "compilerOptions": {
    "target": "esnext",
    "useDefineForClassFields": true,
    "module": "esnext",
    "moduleResolution": "node",
    "strict": true,
    "jsx": "preserve",
    "sourceMap": true,
    "resolveJsonModule": true,
    "esModuleInterop": true,
    "lib": ["esnext", "dom"]
  },
  "include": [
    "src/**/*.ts",
    "src/**/*.d.ts",
    "src/**/*.tsx",
    "src/**/*.vue",
    "auto-imports.d.ts" // 此处引入该声明文件
  ],
  "references": [{ "path": "./tsconfig.node.json" }]
}

总结

到此这篇关于vue3中unplugin-auto-import自动引入的文章就介绍到这了,更多相关vue3的unplugin-auto-import自动引入内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 谈谈因Vue.js引发关于getter和setter的思考

    谈谈因Vue.js引发关于getter和setter的思考

    最近因为公司的新项目决定使用Vue.js来做,但在使用的过程中发现了一个有趣的事情,因为发现的这个事情展开了一些对于getter和setter的思考,具体是什么下面通过这篇文章来一起看看吧,有需要的朋友们可以参考学习。
    2016-12-12
  • vue+vuex+axios实现登录、注册页权限拦截

    vue+vuex+axios实现登录、注册页权限拦截

    下面小编就为大家分享一篇vue+vuex+axios实现登录、注册页权限拦截,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-03-03
  • vue实现多组关键词对应高亮显示功能

    vue实现多组关键词对应高亮显示功能

    最近小编遇到这样的问题,多组关键词,这里实现了关键词的背景色与匹配值的字体颜色值相同,下面通过定义关键词匹配改变字体颜色,本文通过实例代码给大家介绍的非常详细,需要的朋友参考下吧
    2019-07-07
  • Vue点击切换颜色的方法

    Vue点击切换颜色的方法

    今天小编就为大家分享一篇Vue点击切换颜色的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-09-09
  • Element树形控件el-tree懒加载并设置默认展开和选中的效果

    Element树形控件el-tree懒加载并设置默认展开和选中的效果

    本文主要介绍了Element树形控件el-tree懒加载并设置默认展开和选中的效果,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-01-01
  • Vue开发之watch监听数组、对象、变量操作分析

    Vue开发之watch监听数组、对象、变量操作分析

    这篇文章主要介绍了Vue开发之watch监听数组、对象、变量操作,结合实例形式分析了vue.js使用Watch针对数组、对象、变量监听相关操作技巧,需要的朋友可以参考下
    2019-04-04
  • webpack+vue+express(hot)热启动调试简单配置方法

    webpack+vue+express(hot)热启动调试简单配置方法

    今天小编就为大家分享一篇webpack+vue + express (hot) 热启动调试简单配置方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-09-09
  • 基于Vue实现树形穿梭框的示例代码

    基于Vue实现树形穿梭框的示例代码

    这篇文章主要为大家介绍了如何利用Vue实现一个树形穿梭框,elementUI和ant-d组件库的穿梭框组件效果都不是很好,所以本文将利用一个新的插件来实现,需要的可以参考一下
    2022-04-04
  • vue接入ts基本方法

    vue接入ts基本方法

    这篇文章主要介绍了vue接入ts基本方法,关于ts,也出了很久,下面我们就来简单学习了下ts并且在原有项目上接入基本ts语法,也算是一个初级尝试,简单梳理下基础的接入配置和已经遇到的问题,供需要的小伙伴们参考
    2022-01-01
  • vue传值方式的十二种方法总结

    vue传值方式的十二种方法总结

    这篇文章主要介绍了vue传值方式的十二种方法总结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-04-04

最新评论