">
当前位置:   article > 正文

vue3.2引用unplugin-vue-components插入,解放开发中import组件_unplugin-vue-components disabled */

前言

       unplugin-vue-components是一个用于Vue.js项目的插件,特别适用于Vite和Webpack构建工具。它的主要功能是自动导入Vue组件,从而减少了在每个文件中手动导入组件的需要。
在这里插入图片描述

引用unplugin-vue-components插件的优缺点

优点

  • 自动导入组件: 最大的优点是能够自动导入组件,减少了重复和繁琐的导入代码。
  • 减少代码冗余: 在大型项目中,这可以显著减少代码的重复和冗余。
  • 提高开发效率: 自动化的过程可以加快开发速度,特别是在频繁添加新组件的场景中。
  • 易于维护: 自动导入组件可以简化项目结构,使得项目更加易于维护。
  • 支持多种模式: 支持按需导入,可以根据配置来自动化地导入全局组件或局部组件。
  • 灵活的配置选项: 插件提供了多种配置选项,可根据项目需求灵活配置。

缺点

  1. 隐藏的依赖关系: 自动导入可能会隐藏组件之间的依赖关系,这对于代码的阅读和理解可能是一个挑战。
  2. IDE支持: 某些集成开发环境(IDE)可能不完全支持自动导入功能,这可能影响代码的智能提示和错误检查。
  3. 学习曲线: 对于新手或不熟悉该插件的开发者,理解和配置插件可能有一定难度。
  4. 构建工具的依赖: 依赖于构建工具(如Vite或Webpack),在不支持这些工具的环境中可能无法使用。
  5. 可能影响构建性能: 在某些情况下,自动解析和导入组件可能对构建性能产生一定影响。

unplugin-vue-components插件引入

安装插件

npm install unplugin-vue-components -D
# 或者使用 yarn
yarn add unplugin-vue-components -D
  • 1
  • 2
  • 3

配置vite配置

       在你的Vite配置文件(通常是vite.config.js或vite.config.ts)中添加对应的配置。在Components中添加你想要自动导入的相关库或者本地的vue文件。

import Vue from '@vitejs/plugin-vue'
import Components from 'unplugin-vue-components/vite'
import { VantResolver } from 'unplugin-vue-components/resolvers'

export default {
  plugins: [
    Vue(),
    Components({
      resolvers: [VantResolver()],
      // 本地希望自动导入的vue文件的代码位置
      dirs: ['src/views'],
    }),
    // ...其他插件
  ],
  // ...其他 Vite 配置
}

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17

更新TypeScript配置

       如果项目是TypeScript项目,更新tsconfig.json以包含自动生成的类型声明文件:

{
  "include": [
    "components.d.ts",
  ],
}
  • 1
  • 2
  • 3
  • 4
  • 5

使用

<template>
  <navBar ></navBar>
  <Tabbar ></Tabbar>
</template>

<script setup lang="ts">
</script>

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

代码位置

       github代码地址

总结

       至此在在项目中配置unplugin-vue-components插件,自动引入组件库就完成。快去体验吧。

Q&A

1、项目中不要出现相同名称的vue组件,要不自动导入的时候会默认只加载第一个,后面的会忽略;

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/很楠不爱3/article/detail/119041?site
推荐阅读
相关标签
  

闽ICP备14008679号