首页 > 其他分享 >vue的插件使用

vue的插件使用

时间:2023-06-05 11:56:17浏览次数:33  
标签:插件 vue binding value element Vue install 使用

vue 插件
功能:用于增强Vue

本质:包含install方法的一个对象,install的第一个参数是Vue,第二个以后的参数是插件使用者传递的数据。

1、定义插件:

对象.install = function(Vue,options){

  // 1、添加全局过滤器
  Vue.filter(....)
  // 2、添加全局指令

  Vue.directive(...)

  // 3、配置全局混入

  Vue.mixin(...)

  // 4、添加实例方法

  Vue.prototype.$myMethod = function(){.....}

  Vue.prototype.$myProperty = xxx
  }

2、使用插件:

Vue.use(对象)

 

具体使用案例

1、新建plugins.js

export default {
  // 插件必须包含一个install方法
  install(Vue) { 
    console.log('@@@install', Vue)
    // 全局过滤器
    Vue.filter('mySlice', function (value) { 
      console.log('value',value)
      return value.slice(0,4)
    })

    // 定义全局指令
    Vue.directive('fbind', {
      // 指令与元素成功绑定时(以上来就执行)
      bind(element,binding) { 
        console.log(element, binding)
        element.value = binding.value;
      },

      // 指令所在元素被插入页面时执行
      inserted(element, binding) { 
        console.log('binding',binding)
        element.focus()
      },

      // 指令所在的模板被重新解析时执行
      update(element, binding) {
        element.value = binding.value;
       }

    })

    // 定义混入
    Vue.mixin({
      data() { 
        return {
          globalNum:1,
        }
      }
    })
    // 给Vue原型上添加一个方法
    Vue.prototype.$hello = () => { 
      alert('你好啊')
    }
  }
}

2、应用插件

//  引入插件
import plugins from './plugins'

// 使用插件
Vue.use(plugins)

 

标签:插件,vue,binding,value,element,Vue,install,使用
From: https://www.cnblogs.com/hyt09/p/17457431.html

相关文章

  • 视频播放 video标签的使用
    vue3.0项目中,引入了videojs,使用video。npminstall--savevideo.jsvideo标签<videoid="my-video"class="video-js"controlspreload="auto"poster="/img/news/news_index_16.png"muted="true"width="800&quo......
  • 解决VSCode的Vetur插件has no default export问题
    由于有vue2和vue3的项目,VSCode同时使用了vetur和volar插件,但是在vue3引入其他模块时,报了错误Module'"xxxx.vue"'hasnodefaultexport.的错误,实际运行时没问题的,但是看得糟心。解决办法,只要在设置里,设置"vetur.validation.script":false......
  • 系统化学习前端之Vue(vue2 组件通信)
    前言前文vue2基础中聊过,页面本质是DOM树,而在vue2中组件=vm实例对象=DOM。因此,页面其实也是组件树构成,组件之间形成父子关系,兄弟关系等,相互之间通信也是组件树的必须要求。vue2组件通信组件通信即组件之间的数据传递。props和$emit$attrs和$listener$parent......
  • mac M2 使用sed
    安装distributionBase=GRADLE_USER_HOME替换apline源set-eux&&sed-i's/dl-cdn.alpinelinux.org/mirrors.ustc.edu.cn/g'/etc/apk/repositories替换urlsed-es"https://mirrors.cloud.tencent.com/gradle/gradle-6.8.1-bin.zip"/"f......
  • Flutter 使用dio来发起网络请求以及Cookie管理
    前言Flutter官方建议您使用 dio 来发起网络请求,在学习过程中,也尝试过用dartio中的HttpClient发起的请求,这里主要讲一下dio的使用以及CookieJar、CookieManager管理cookie。diodio是一个强大易用的darthttp请求库,支持RestfulAPI、FormData、拦截器、请求取消、Cookie......
  • HTTP框架--FOREST 的使用
    引入jar包<dependency><groupId>com.dtflys.forest</groupId><artifactId>spring-boot-starter-forest</artifactId><version>1.3.0</version></dependency>定义自己的接口类publicinterfaceMyClient{@Request(url=......
  • SpringBoot中的MapStruct使用
    目的:MapStruct可以实现对象之间的转换一、引入依赖<!--lombok--><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId></dependency><!--mapstruct--><dependency><groupId>org.m......
  • 从源码分析 Go 语言使用 cgo 导致的线程增长
    TDengineGo连接器https://github.com/taosdata/driver-go使用cgo调用taos.so中的API,使用过程中发现线程数不断增长,本文从一个cgo调用开始解析Go源码,分析造成线程增长的原因。转换cgo代码对driver-go/wrapper/taosc.go进行转换gotoolcgotaosc.go执行后生成......
  • PostgreSQL中使用动态SQL-实现自动按时间创建表分区
    PostgreSQL中通过继承,可以支持基本的表分区功能,比如按时间,每月创建一个表分区,数据记录到对应分区中。按照官方文档的操作,创建子表和index、修改trigger等工作都必须DBA定期去手动执行,不能实现自动化,非常不方便。尝试着通过在plpgsql代码中使用动态SQL,将大表分区的运维操作实现......
  • babel-plugin-enhance-log插件使用
    一个用来为console.log添加代码行数,log参数名以及添加分隔符的插件#1.安装插件npmibabel-plugin-enhance-log-D#oryarnaddbabel-plugin-enhance-log-D#orpnpmaddbabel-plugin-enhance-log-D#2.在babel.congfig.js中添加插件://babel.config.jsmodule.expo......