当前位置: 首页 > news >正文

正规的网站建设官网动漫设计难不难

正规的网站建设官网,动漫设计难不难,爱站网自媒体数据,工程承包去哪个网站重复组件导入简化 在 Vue 3 项目中,如果你发现每个组件都要重复导入 api 和 utils,是可以通过几种方式简化甚至完全避免这些重复导入的。下面是常用的几种简化方案: ✅ 方案一:使用 app.config.globalProperties 注入全局属性 …

重复组件导入简化

在 Vue 3 项目中,如果你发现每个组件都要重复导入 api 和 utils,是可以通过几种方式简化甚至完全避免这些重复导入的。下面是常用的几种简化方案:

✅ 方案一:使用 app.config.globalProperties 注入全局属性

这是最常见的做法,可以在 main.ts 或 main.js 中将 api 和 utils 挂载到 app.config.globalProperties 上,使其在所有组件中通过 this. a p i 和 t h i s . api 和 this. apithis.utils 直接访问(仅限于 Options API)。

示例:

// main.ts
import { createApp } from 'vue'
import App from './App.vue'
import api from '@/api'
import utils from '@/utils'const app = createApp(App)app.config.globalProperties.$api = api
app.config.globalProperties.$utils = utilsapp.mount('#app')

使用(Options API 中):

<script>
export default {mounted() {this.$api.getData()const formatted = this.$utils.formatDate(new Date())}
}
</script>

✅ 方案二:使用 Vue 插件封装并自动注入

你可以把 api 和 utils 封装成一个插件,一次性注册。

plugins/global-inject.ts:

export default {install(app) {app.config.globalProperties.$api = require('@/api').defaultapp.config.globalProperties.$utils = require('@/utils').default}
}

在 main.ts 中使用

import globalInject from './plugins/global-inject'
app.use(globalInject)

✅ 方案三:使用 Vite / Webpack 的路径别名 + 全局 Auto Import(组合式 API 推荐)

如果你使用的是 组合式 API(setup),this.$api 是不可用的,但你可以使用自动导入(借助插件)

配置 unplugin-auto-import

使用 Vite 项目的话,可以借助unplugin-auto-import:

import AutoImport from 'unplugin-auto-import/vite'export default defineConfig({plugins: [AutoImport({imports: [// 自动导入 Vue 相关 API'vue',{'@/api': [['default', 'api']],'@/utils': [['default', 'utils']],}],dts: 'src/auto-imports.d.ts',})]
})

使用(setup 中无须导入):

setup() {api.getUser()const formatted = utils.formatDate(new Date())
}

✅ 方案四:封装 Composition API 方法

如果 apiutils 有非常常用的方法,也可以封装成组合式函数,如

// composables/useApi.ts
import api from '@/api'
export function useApi() {return api
}// composables/useUtils.ts
import utils from '@/utils'
export function useUtils() {return utils
}

然后在组件里:

import { useApi, useUtils } from '@/composables'setup() {const api = useApi()const utils = useUtils()api.getData()
}

✅ 总结

方法优点使用场景支持 Options API支持 Setup API
app.config.globalProperties简单、常用Options API 项目
插件注入模块化清晰中大型项目
自动导入插件零导入体验现代组合式项目(Vite)
封装 composables更符合组合式风格通用✅(手动引入)
http://www.dtcms.com/a/618172.html

相关文章:

  • 运行,暂停,检查:探索如何使用LLDB进行有效调试
  • YOLOv8交通信号灯检测
  • asp.net企业网站管理系统工厂型企业做网站
  • linux gpib 驱动
  • 中壹建设工程有限公司官方网站搜索引擎实训心得体会
  • 公司做个网站学网站开发的书
  • IP传输层协议在通信系统中的介绍
  • 数据结构 —— 队列
  • OKHttp核心设计解析:拦截器与连接池的工作原理与实现机制
  • 做资源网站需要什么单页做网站教程
  • 实用程序:一键提取博客图片链接并批量下载的工具
  • 破解入门学习笔记题四十七
  • 登陆国外网站速度慢网站重构案例
  • 百日挑战——单词篇(第二十三天)
  • 基于Flask + ECharts的个人财务仪表盘 -(上个记账本的优化MAX)
  • Galois 理论 | 发展历程 / 基本定理的证明
  • 给定一个数组,如何用最小的比较次数获得最大最小值
  • 个人网站免费源码大全南宁seo管理
  • Linux服务器崩溃急救指南:快速诊断与恢复
  • 后端服务发现配置
  • wordpress建的手机网站合肥信息网
  • 我爱学算法之—— 字符串
  • 关于Function JS加密加密(仅于问题分析)
  • mysql基础——视图
  • win系统做网站wordpress侧边文本轮播图片
  • 免费微商城平台官网一直在做竞价的网站是不是不需要做seo
  • 输出纹波实测:ASP3605在不同输入与负载条件下的稳定性表现
  • RAG向量索引-HNSW Hierarchical Navigable Small World 介绍
  • 沈阳做网站的企业重庆房产网站建设
  • 让老版 IntelliJ IDEA 2020.1.4 支持 JDK 17 启动 springboot3 项目