码迷,mamicode.com
首页 > Web开发 > 详细

Vue.js自定义指令的用法与实例

时间:2018-01-18 00:53:54      阅读:217      评论:0      收藏:0      [点我收藏+]

标签:tip   用法   image   insert   cti   body   lint   实例   als   

官网:自定义指令

实例:v-color

注册一个全局自定义指令 `v-color-two`

在main.js中:

import Vue from ‘vue‘
import App from ‘./App‘

Vue.config.productionTip = false

Vue.directive(‘colorTwo‘, {
  // 当被绑定的元素插入到 DOM 中时……
  inserted: function(el, binding) {
    el.style.color = binding.value;
  }
});

/* eslint-disable no-new */
new Vue({
  el: ‘#app‘,
  template: ‘<App/>‘,
  components: { App }
});

调用全局自定义指令:

app.vue文件中:

<template>
  <div id="app">
    <p v-color-two="‘blue‘">自定义指令:v-colorTwo</p>
  </div>
</template>

如果想注册局部指令,组件中也接受一个 directives 的选项:

注册局部自定义指令  v-color

<script>
export default {
  name: ‘app‘,
  components: {},
  directives: {
    // 指令的定义
    color: function(el, binding) {
      el.style.color = binding.value;
    }
  },
  data() {
    return {}
  },
  mounted: function() {},
  methods: {}
}
</script>

调用自定义指令  v-color 

<template>
  <div id="app">
    <p v-color="‘red‘">自定义指令:v-color</p>
  </div>
</template>

页面效果:

技术分享图片

 

Vue.js自定义指令的用法与实例

标签:tip   用法   image   insert   cti   body   lint   实例   als   

原文地址:https://www.cnblogs.com/yingzi1028/p/8306597.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!