vue封装的组件中如何接收directives指令参数?

qngyun1029
  • 722

自己写了一个输入框组建base-input,主要集中管理样式和一些ui逻辑。随着业务的扩展,需要定制输入框可以输入的类型,现在我写了一个指令'only-num',在调用方调用 base-input的时候如何把这个指令从外部传递进来呢?

回复
阅读 1.9k
3 个回答

自定义钩子--https://cn.vuejs.org/v2/guide...
arg:传给指令的参数,可选。例如 v-my-directive:foo 中,参数为 "foo"。
Vue.directive('demo', {
bind: function (el, binding, vnode) {

var s = JSON.stringify
el.innerHTML =
  'name: '       + s(binding.name) + '<br>' +
  'value: '      + s(binding.value) + '<br>' +
  'expression: ' + s(binding.expression) + '<br>' +
  'argument: '   + s(binding.arg) + '<br>' +
  'modifiers: '  + s(binding.modifiers) + '<br>' +
  'vnode keys: ' + Object.keys(vnode).join(', ')

}
})

我觉得可以不需要通过指令的形式,可以直接传props ,再在组件內写相应的逻辑就成了

不需要指令,而是props

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
你知道吗?

宣传栏