vite插件 unplugin-auto-import 自动导入API

 unplugin-auto-import  插件可以自动导入API,它可以帮助开发者减少手动导入的重复代码,提高开发效率,并支持 Vue、Pinia、Vue Router 等常用库的自动导入。

使用该插件无需手动写 import 语句,直接使用 refreactiveonMounted 等 Composition API,该插件还支持Pinia和 vue ruter 和axios等常用库,也支持自定义的函数

下载插件

npm地址

pnpm i -D unplugin-auto-import

配置插件

vite.config.ts

import AutoImport from "unplugin-auto-import/vite";

export default defineConfig({
  plugins: [
    AutoImport({
      imports: ["vue", "vue-router", "pinia"], // 自动导入的库
      dts: "src/auto-imports.d.ts", // 生成类型声明文件,该文件自动生成
      dirs: ["src/utils/commonFn.ts"], // 自动导入该目录下的函数
      eslintrc: {
          enabled: true, // 生成 ESLint 配置
          filepath: './.eslintrc-auto-import.json', //该文件也是自动成功
        },
    }),
  ],
});

组件中使用

配置成功之后在组件中使用无需单独引入

isObject函数位于 src ->utils -> commonFn 下

export function isObject(val) {
  return typeof val === 'object' && val !== null
}
<template>
  <div class="v-model-container">
    <label>输入框:</label>
    <input v-model="inputValue" />
  </div>
</template>
<script setup lang="ts">
// import { ref } from 'vue'
// import {isObject} from "@/utils/commonFn";

const inputValue = ref('text text')
console.log(isObject(inputValue.value))
</script>

解决eslint检查报错

在.eslintrc.cjs 中配置

module.exports = {
   ......

  /* 继承已有的规则 */
  extends: [
    "./.eslintrc-auto-import.json", // 必须放在最前面
    "eslint:recommended",
    "plugin:vue/vue3-essential",
    "plugin:@typescript-eslint/recommended",
    "plugin:prettier/recommended",
  ],
},

为了配置 `unplugin-icons` 和 `unplugin-auto-import`,以实现从 Iconify 自动导入图标集,你需要按照以下步骤操作: ### 安装必要的依赖 首先,确保你已经安装了 `unplugin-icons`、`unplugin-auto-import` 以及 `unplugin-vue-components`。如果你使用的是 Vue 3 项目,可以通过以下命令安装这些依赖: ```bash pnpm install -D unplugin-icons unplugin-auto-import unplugin-vue-components ``` ### 配置 Vite 插件 接下来,在你的 `vite.config.ts` 文件中添加并配置这些插件。以下是配置示例: ```ts import { defineConfig } from 'vite' import vue from '@vitejs/plugin-vue' import Icons from 'unplugin-icons/vite' import IconsResolver from 'unplugin-icons/resolver' import AutoImport from 'unplugin-auto-import/vite' import Components from 'unplugin-vue-components/vite' export default defineConfig({ plugins: [ vue(), // 自动导入图标 Icons({ // 自动安装图标库 autoInstall: true, }), // 自动导入API、函数等 AutoImport({ resolvers: [ // 自动解析图标 IconsResolver({}), ], }), // 自动导入Vue组件 Components({ resolvers: [ // 解析图标组件 IconsResolver({ // 启用Element Plus图标库 enabledCollections: ['ep'], // 修改图标组件前缀,不设置默认为i prefix: 'icon', }), ], }), ], }) ``` ### 使用图标 完成上述配置后,你可以在模板中直接使用图标名称来展示图标。例如,如果你想使用 Element Plus 的 `Plus` 图标,可以这样写: ```html <template> <icon-ep-plus /> </template> ``` 这里的 `icon-ep-plus` 是根据配置生成的图标组件名称,其中 `ep` 表示 Element Plus 图标库,`plus` 是具体的图标名称。 ### 注意事项 - **图标库的选择**:你可以根据需要启用不同的图标库。例如,除了 `ep`(Element Plus),还有 `mdi`(Material Design Icons)、`fa`(Font Awesome)等。具体可用的图标库列表可以在 [Iconify](https://icon-sets.iconify.design/) 查看。 - **图标前缀**:你可以通过 `prefix` 选项自定义图标组件的前缀,默认情况下是 `i`,但你可以将其修改为你想要的任何前缀。 - **动态加载图标**:由于 `unplugin-icons` 支持按需加载图标,因此只有在实际使用的图标才会被打包进最终的构建文件中,这有助于减少项目的体积。 通过以上步骤,你应该能够成功配置 `unplugin-icons` 和 `unplugin-auto-import`,从而从 Iconify 自动导入任何图标集。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值