【插件推荐】vue3自动导入unplugin-auto-import

今天给大家推荐一个组件,《unplugin-auto-import》它可以把vue3中的方法自动引入,不用大家每个js,ts文件都需要去引入vue3相关方法,支持TypeScript

unplugin-auto-import

1.下载

npm i unplugin-auto-import -save

2.配置

我这里用的是Vue CLI,所以要在vue.config.js文件中添加配置,官网中有写不同打包工具的配置写法
引入:

// 自动按需加载
const AutoImport = require('unplugin-auto-import/webpack')

在configureWebpack.plugins中添加

// 自动按需加载
AutoImport({
  imports: ['vue', 'vue-router', 'vuex'],
  eslintrc: {
    enabled: false, // 默认false, true启用。生成一次就可以,避免每次工程启动都生成
    filepath: './.eslintrc-auto-import.json', // 生成json文件,eslintrc中引入
    globalsPropValue: true,
  },
}),

因为是使用自动导入,所以js文件中我们不需要导入,但是eslint会检测到报错,第一次启动的时候把eslintrc.enabled设置为true,会在项目根目录生成一个eslintrc-auto-import.json文件,我们需要把他在eslint配置文件中引入一下
.eslintrc.js文件中:

extends: [
    'plugin:vue/vue3-recommended',
    'eslint:recommended',
    '@vue/prettier',
	'./.eslintrc-auto-import.json'//自动导入忽略
],

这些使用的时候就不用导入了

{
  "globals": {
    "EffectScope": true,
    "computed": true,
    "createApp": true,
    "createLogger": true,
    "createNamespacedHelpers": true,
    "createStore": true,
    "customRef": true,
    "defineAsyncComponent": true,
    "defineComponent": true,
    "effectScope": true,
    "getCurrentInstance": true,
    "getCurrentScope": true,
    "h": true,
    "inject": true,
    "isProxy": true,
    "isReactive": true,
    "isReadonly": true,
    "isRef": true,
    "mapActions": true,
    "mapGetters": true,
    "mapMutations": true,
    "mapState": true,
    "markRaw": true,
    "nextTick": true,
    "onActivated": true,
    "onBeforeMount": true,
    "onBeforeRouteLeave": true,
    "onBeforeRouteUpdate": true,
    "onBeforeUnmount": true,
    "onBeforeUpdate": true,
    "onDeactivated": true,
    "onErrorCaptured": true,
    "onMounted": true,
    "onRenderTracked": true,
    "onRenderTriggered": true,
    "onScopeDispose": true,
    "onServerPrefetch": true,
    "onUnmounted": true,
    "onUpdated": true,
    "provide": true,
    "reactive": true,
    "readonly": true,
    "ref": true,
    "resolveComponent": true,
    "resolveDirective": true,
    "shallowReactive": true,
    "shallowReadonly": true,
    "shallowRef": true,
    "toRaw": true,
    "toRef": true,
    "toRefs": true,
    "triggerRef": true,
    "unref": true,
    "useAttrs": true,
    "useCssModule": true,
    "useCssVars": true,
    "useLink": true,
    "useRoute": true,
    "useRouter": true,
    "useSlots": true,
    "useStore": true,
    "watch": true,
    "watchEffect": true,
    "watchPostEffect": true,
    "watchSyncEffect": true
  }
}
### 配置 `unplugin-auto-import` 插件 为了在 Vue 3 项目中配置 `unplugin-auto-import` 插件,可以按照以下方法操作: #### 安装依赖包 首先安装必要的 npm 包。这包括 `unplugin-auto-import` 和其 Vite 或 Webpack 特定版本的适配器之一。 ```bash npm install unplugin-auto-import vite-plugin-vue @vue/compiler-sfc --save-dev ``` 对于使用 Vite 的 Vue 3 项目来说,上述命令会安装所需的工具集;如果是在其他构建环境下,则应替换相应的打包工具插件部分。 #### 修改配置文件 接着修改项目的构建配置文件(通常是 `vite.config.ts` 或者 `webpack.config.js`),加入该插件的支持并指定自动导入的内容范围。 针对 Vite 用户,在 `vite.config.ts` 中添加如下代码片段[^1]: ```typescript // vite.config.ts import { defineConfig } from &#39;vite&#39; import vue from &#39;@vitejs/plugin-vue&#39; import AutoImport from &#39;unplugin-auto-import/vite&#39; export default defineConfig({ plugins: [ vue(), AutoImport({ imports: [&#39;vue&#39;], dts: &#39;src/auto-imports.d.ts&#39;, // 可选:生成 TypeScript 声明文件的位置 }), ], }) ``` 这段脚本启用了 `AutoImport` 功能,并指定了要自动加载的对象列表以及可选项中的类型声明输出路径。 #### 使用自动生成的功能 完成以上设置之后,无需手动引入即可直接访问所列模块内的成员变量或函数。例如可以直接书写 `<script setup>` 组件而不需要显式地写入 `import { ref, reactive } from &#39;vue&#39;` 这样的语句来获取响应式的 API 接口。
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值