vue 引入工具类

引入工具类

 


<script>
import {
  listCallphonelog,
  getCallphonelog,
  delCallphonelog,
  addCallphonelog,
  updateCallphonelog
} from "@/api/app/callphonelog";

import {formatDate} from '@/utils';

 

### 在 Vue 项目中引入使用工具类函数或方法的最佳实践 #### 使用插件形式注册全局工具类 为了在整个应用程序中访问工具类的功能,可以在 `main.js` 中将其作为插件安装。这使得任何组件都能方便地调用这些功能而无需重复导入。 ```javascript // main.js import { createApp } from 'vue' import App from './App.vue' import Tool from '../public/tool/enroll.js' const app = createApp(App) app.use(Tool) // 注册为插件[^1] app.mount('#app') ``` #### 挂载至Vue原型链实现全局可用性 另一种常见的做法是把工具库挂载到 Vue 的原型对象上,从而让所有实例都能够直接获取到所需的方法。 ```javascript // main.js import Vue from 'vue'; import util from './assets/js/util'; Vue.prototype.$util = util; // 添加到原型链[^2] ``` 此时,在任意组件内部就可以通过 `this.$util.methodName()` 来调用了。 #### 面向TypeScript环境下的处理方案 对于采用 TypeScript 开发的 Vue3 应用程序来说,则推荐按照如下方式进行设置: - 创建一个新的文件夹用于存放公共辅助函数,并确保每个 `.ts` 文件都以 `export default` 导出其定义的内容; - 修改入口配置文件 (`shims-vue.d.ts`) 或者其他合适的位置来声明扩展属性以便 IDE 和编译器识别新增加的成员; - 将工具集添加到应用上下文中或者继续沿用上述提到的原型链注入模式之一。 ```typescript // src/shims-vue.d.ts declare module '@vue/runtime-core' { interface ComponentCustomProperties { $tool: typeof import('./utils/tools').default; } } // main.ts import { createApp } from 'vue'; import App from './App.vue'; import tools from './utils/tools'; createApp(App).use(tools as any).mount('#app'); ``` 以上步骤能够帮助开发者更好地管理跨页面共享逻辑的同时也提高了代码可读性和安全性[^3]。 #### 单独按需加载特定工具函数 如果只需要某个具体的实用程序而不是整个集合的话,那么可以直接针对目标模块实施局部引入策略。这种方式有助于减少打包体积以及加快初次渲染速度。 ```html <script lang="ts" setup> import { formatPhoneNumber } from '@/utils/formatters'; console.log(formatPhoneNumber('1234567890')); </script> <template v-if="item.prop === 'phonenumber'"> {{ formatPhoneNumber(item.value) }} </template> ``` 这种方法适用于那些只会在少数几个地方被使用的独立功能点[^5]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值