0

我正在使用 vue js,并且我有 dargable 组件项,我使用 for 循环生成了可拖动组件来显示组件,所以当单击组件时,如何检测我在哪个组件中。

这是我的 index.vue 文件:

import item from './component/itemComponent.vue'; 
<template>
  <div>
    <dragable
      :element="ul"
      v-modal="list">
       <li v-for="(index, i) in list" :key="i">
           <item :indexItem="index"></item
       </li>
    </dragable>
  </div>
</template>

这是 itemComponent.vue 文件:

<template>
    <a 
       @click="getComponentAttributes()" 
       class="btn btn-primary">{{ intemIndex.name }} </a>
</template>

<script>
  export default {
   props:['indexItem'],
   data(){
      return {
         isOpen: false
     }
   },
   methods : {
    getComponentAttributes(){
             this.isOpen = true; 
                // its not working just for one 
               // component, it working for all component and  I need 
              //  to implment to one component specific 
             // current component
       }
  } 
}
</script>
4

1 回答 1

0

编辑以下评论。

有点复杂,但可以解决问题。https://jsfiddle.net/guillaumedeslandes/t12k43ov/

添加了触发强制关闭状态的事件,并且必须将项目状态存储在父组件中以允许draggable在保持顺序的同时对其进行操作。

于 2019-09-23T14:06:09.203 回答