如何全局封装并使用方法(Vue)

简介: vue

序:

项目中一般必不可少会遇到,同一个方法多个页面或者组件都需要用到,这个时候我们可以封装一个全局方法,方便使用。本文章以limit-input.js为例(使用功能实现不做使用参考)。

文件存放位置:

一般位于src/utils
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FC1RBp3g-1653319596061)(C:\Users\huawei\AppData\Roaming\Typora\typora-user-images\image-20220519151605223.png)]

limit-input.js内容

export default {
  /**
    * 只能输入大于0的正整数(不能以0开头)
    * @param {string} value
    * @returns {string | number} 返回空字符或数字
    */
   integerFn(value) {
       let reg = /[1-9]{1}[0-9]*$/;
       let strArray = value.split("");
       let newStrs = "";
       for (let i = 0; i < strArray.length; i++) {
           if (reg.test(strArray[i])) {
               newStrs += strArray[i];
           } else if (i > 0 && strArray[i] === "0") {
               newStrs += strArray[i];
           }
       }
       if (newStrs - 0 > 0) {
           return newStrs - 0;
       } else {
           return "";
       }
   }
};

main.js文件

// 将限制函数文件绑定到vue原型上,供全局使用
import limit from "./utils/limit-fuction";
Vue.prototype.$limit = limit;

vue组件中使用:

 <el-input v-model="signValue" @input="(e) => (signValue = $limit.integerFn(e))"></el-input>
目录
相关文章
|
2天前
|
JavaScript
|
4天前
|
JavaScript
【vue】el-dialog 内的tinymce弹窗被遮挡的解决办法 及 tinymce打开弹出菜单后直接关闭对话组件,导致该弹出菜单残留
【vue】el-dialog 内的tinymce弹窗被遮挡的解决办法 及 tinymce打开弹出菜单后直接关闭对话组件,导致该弹出菜单残留
14 6
|
1天前
|
存储 缓存 JavaScript
vue代码优化方案
【7月更文挑战第13天】 **Vue.js 优化要点:** 分解大组件以提高复用性和加载速度;利用计算属性与侦听器优化数据处理;使用Object.freeze()减少响应式数据;借助Vuex或Composition API管理状态;实现虚拟滚动和无限加载提升长列表性能;路由懒加载减少初始加载时间;用Vue DevTools检测性能瓶颈;定期代码审查与重构;应用缓存策略;遵循最佳实践与团队规范,提升应用整体质量。
10 2
|
4天前
|
JavaScript 前端开发
【vue】 el-table解决分页不能筛选全部数据的问题
【vue】 el-table解决分页不能筛选全部数据的问题
15 4
|
4天前
|
JavaScript
【vue】 vue2 监听滚动条滚动事件
【vue】 vue2 监听滚动条滚动事件
10 1
|
4天前
|
JavaScript 定位技术
【天地图】vue 天地图 T is not defined
【天地图】vue 天地图 T is not defined
14 1
|
9天前
|
数据采集 JavaScript 前端开发
Vue框架的优缺点是什么
【7月更文挑战第5天】 Vue框架:组件化开发利于重用与扩展,响应式数据绑定简化状态管理;学习曲线平缓,生态系统丰富,集成便捷,且具性能优化手段。缺点包括社区规模相对小,类型支持不足(Vue 3.x改善),路由和状态管理需额外配置,SEO支持有限。随着发展,部分缺点正被克服。
19 1
|
9天前
|
JavaScript
Vue卸载eslint的写法,单独安装eslint,单独卸载eslint
Vue卸载eslint的写法,单独安装eslint,单独卸载eslint
|
4天前
|
JavaScript 前端开发
【vue】 Tinymce 数据 回显问题 | 第一次正常回显后面,显示空白bug不能编辑
【vue】 Tinymce 数据 回显问题 | 第一次正常回显后面,显示空白bug不能编辑
9 0
|
4天前
|
JavaScript 前端开发 数据安全/隐私保护
【vue】自定义指令实现 复制、长按、水印 功能
【vue】自定义指令实现 复制、长按、水印 功能
9 0

相关实验场景

更多