vue3 hook自动导入原理解析

 更新时间:2022年09月28日 10:51:01   作者:别拿bug搞偷袭  
这篇文章主要介绍了vue3 hook自动导入的原理,介绍了API的自动导入及组件的自动导入,本文结合实例代码给大家介绍的非常详细,需要的朋友可以参考下

1. vue3 自动导入

原理 :

  • 预加载前,该插件自动 按需导入 了,在本vue文件中使用 api组件
  • 编写代码 的时候,就无需 import
  • 注意并不是全局导入,并不会影响到资源

2. API 的 自动引入

Ⅰ、使用前后对比

使用插件前:

<script setup>
	import { ref } from "@vue/reactivity";
	import { useRouter } from "vue-router";
	const router = useRouter();
	const name = ref('张三');
</script>

使用插件后:

<script setup>
	const router = useRouter();
	const name = ref('张三');
</script>

Ⅱ、安装三方件

npm i -D unplugin-auto-import

Ⅲ、配置三方件

vite.config 配置:

import { defineConfig } from "vite"; 
import AutoImport from 'unplugin-auto-import/vite'

export default defineConfig({
  plugins: [
    AutoImport({ imports: ['vue', 'vue-router'] }),
  ]
  //.........
})

不仅次于vue 和 路由,同时也可以在 imports 数组中加入其它的三方件

3. 组件的自动引入

Ⅰ、使用前后对比

使用插件前:

<template>
  <div class="main">
    <Aside />
    <Footer />
  </div>
</template>
<script setup>
	import 	Aside from '/@/components/Aside.vue'
	import Footer from '/@/components/Footer.vue'
</script>

使用插件后:(可选择按导入的文件夹)

<template>
  <div class="main">
    <Aside />
    <Footer />
  </div>
</template>
<script setup></script>

Ⅱ、安装三方件

npm i -D unplugin-vue-components

既可以设置按需导入的组件,也可以设置 按需导入 UI框架 (如: element plus 、 Antd …)

Ⅲ、配置三方件

import { defineConfig } from "vite"; 

import Components from 'unplugin-vue-components/vite' // 按需加载自定义组件
import { ElementPlusResolver, AntDesignVueResolver} from 'unplugin-vue-components/resolvers'
export default defineConfig {
  plugins: [
    Components({
      dts: true,
      dirs: ['src/components'], // 按需加载的文件夹
      resolvers: [
          ElementPlusResolver(),  // Antd   按需加载
          AntDesignVueResolver()  // ElementPlus按需加载
     ] 
    })
  ],
  // ..................................
}
  • dirs 属性:设置自动加载 组件的文件夹 , 默认为 ’ /src/component '
  • resolvers属性 :设置 UI 框架 自动加载 , 注意不要向 main.js 中 导入UI 框架
  • 同时打包时 ,用多少UI组件,打包多少。

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

您可能感兴趣的文章:

相关文章

  • vue封装axios的两种方法总结

    vue封装axios的两种方法总结

    在不同的前端项目中使用相同的axios封装有利于保持一致性,有利于数据之间的传递和处理,本文主要提供两种对axios进行封装的思路,有需要的小伙伴可以参考一下
    2023-10-10
  • vue 保留两位小数 不能直接用toFixed(2) 的解决

    vue 保留两位小数 不能直接用toFixed(2) 的解决

    这篇文章主要介绍了vue 保留两位小数 不能直接用toFixed(2) 的解决操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-08-08
  • Vue-router跳转和location.href的区别及说明

    Vue-router跳转和location.href的区别及说明

    Vue Router是Vue.js官方的路由管理器,它允许我们通过定义路由来管理应用程序的不同视图和状态,Vue路由跳转主要有以下几种方式:<router-link>标签、this.$router.push方法、this.$router.replace方法和this.$router.go方法
    2025-01-01
  • vue的props实现子组件随父组件一起变化

    vue的props实现子组件随父组件一起变化

    这篇文章主要为大家详细介绍了vue的props如何实现子组件随父组件一起变化,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-10-10
  • element-ui 表格实现单元格可编辑的示例

    element-ui 表格实现单元格可编辑的示例

    下面小编就为大家分享一篇element-ui 表格实现单元格可编辑的示例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-02-02
  • vue中echarts3.0自适应的方法

    vue中echarts3.0自适应的方法

    这篇文章主要介绍了vue中echarts3.0自适应,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-02-02
  • 解决antd 表单设置默认值initialValue后验证失效的问题

    解决antd 表单设置默认值initialValue后验证失效的问题

    这篇文章主要介绍了解决antd 表单设置默认值initialValue后验证失效的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-11-11
  • vue 动态修改a标签的样式的方法

    vue 动态修改a标签的样式的方法

    这篇文章主要介绍了vue 动态修改a标签的样式的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-01-01
  • Map.vue基于百度地图组件重构笔记分享

    Map.vue基于百度地图组件重构笔记分享

    这篇文章主要为大家分享了Map.vue基于百度地图组件重构笔记,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-04-04
  • 解决vue cli3使用axios跨域问题

    解决vue cli3使用axios跨域问题

    这篇文章介绍了解决vue cli3使用axios跨域问题,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-01-01

最新评论