vue directive

Vue.directive('numcolor',function(el,binding){
        el.style = 'color:'+binding.value
      });
      Vue.directive("bg",function(el,binding){
        el.style = 'background:'+binding.value    
      })
      var app = new Vue({
        el: '#app',
        data:{
            num:10,
            color:'red',
            bg:'yellow'
        },
        methods:{
            add:function(){
              this.num++
            }
        }
      })
html: 
 <div v-numcolor="color" v-bg="bg">{{num}}</div>

为什么定义两个自定义属性 v-numcolor 和v-bg 只有v-bg起作用呢?

阅读 1.8k
1 个回答

后面的把前面的覆盖了,把 = 改为 += 试试

Vue.directive('numcolor',function(el,binding){
    el.style += 'color:'+binding.value+';'
  });
  Vue.directive("bg",function(el,binding){
    el.style += 'background:'+binding.value+';'    
  })
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题