注册全局方法,全局过滤器和全局组件

1.注册全局方法

1.1 过滤器的公共类

复制代码
//全局过滤器配置
import {dateFormat} from './base/dateUtil'

export default {
    normalDateFormat : function(date,fmt){
        return dateFormat.normalFormat(date,fmt);
    },
    textDateFormat : function(text,fmt){
        return dateFormat.textDateFormat(text,fmt);
    }
}
复制代码

1.2 main.js引入

import filters from '../util/com-filter';//通用filter

1.3全局过滤器注册

//全局filter注册
Object.keys(filters).forEach(key => {
    Vue.filter(key, filters[key])
})

2.通过新键插件,引入全局公共方法

2.1 新建插件文件

复制代码
import Vue from 'vue'
/**定义全局通用方法 */
let commonUtil = {};

commonUtil.install = function(Vue,options){
    Vue.prototype.formatJSON = function(obj){
        return format.formatJSON(obj);
    }
    Vue.prototype.isJSON = function(str){
        return format.isJSON(str);
    }

}
Vue.use(commonUtil);
export default  commonUtil ;
复制代码

2.2 main.js引入插件文件

1
import '../util/base/commonUtil';

  

3.全局组件的配置

1.获取全局组件

复制代码
import Vue from 'vue'
import upperFirst from 'lodash/upperFirst'
import camelCase from 'lodash/camelCase'

const requireComponent = require.context(
  // 其组件目录的相对路径
  '../components/common/',
  // 是否查询其子目录
  false,
  // 匹配基础组件文件名的正则表达式
  /[A-Z]\w+\.(vue|js)$/
)
复制代码

2.组件格式化

复制代码
requireComponent.keys().forEach(fileName => {
  // 获取组件配置
  const componentConfig = requireComponent(fileName)

  // 获取组件的 PascalCase 命名
  const componentName = upperFirst(
    camelCase(
      // 获取和目录深度无关的文件名
      fileName
        .split('/')
        .pop()
        .replace(/\.\w+$/, '')
    )
  )
复制代码

3.组件绑定vue

复制代码
requireComponent.keys().forEach(fileName => {
  // 获取组件配置
  const componentConfig = requireComponent(fileName)

  // 获取组件的 PascalCase 命名
  const componentName = upperFirst(
    camelCase(
      // 获取和目录深度无关的文件名
      fileName
        .split('/')
        .pop()
        .replace(/\.\w+$/, '')
    )
  )
复制代码

 

以上就是绑定全局方法,过滤器,和组件的方法;

 

posted @   PerfectLi  阅读(699)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· 葡萄城 AI 搜索升级:DeepSeek 加持,客户体验更智能
· 什么是nginx的强缓存和协商缓存
· 一文读懂知识蒸馏
点击右上角即可分享
微信分享提示