소스 검색

Popover: v-popover directive supports expression (#9564)

daipeng 7 년 전
부모
커밋
5ae30dd98f
1개의 변경된 파일3개의 추가작업 그리고 1개의 파일을 삭제
  1. 3 1
      packages/popover/src/directive.js

+ 3 - 1
packages/popover/src/directive.js

@@ -1,5 +1,7 @@
 export default {
   bind(el, binding, vnode) {
-    vnode.context.$refs[binding.arg].$refs.reference = el;
+    // vue中 v-popover:argument 和 v-popover="variate|| expression"得到的binding数据是不同的。后者可以指向动态popver组件,可以极大的增强popover指令的灵活程度。
+    const _ref = binding.expression ? binding.value : binding.arg;
+    vnode.context.$refs[_ref].$refs.reference = el;
   }
 };