如何使用Vue可拖动从组件列表中的项目拖动到另一个组件内部的列表?

吉姆

我正在尝试使用Vue可拖动将项目从一个列表移动到另一个列表,但是列表在组件内部,因此无法正常工作。这些项目能够在列表内部移动,但不能从列表移动到另一个。

我有一个包含所有列表的Board组件和一个包含可拖动项的List组件。

这是板组件:

<template>
  <div class="board">
    <BoardMenu :users="this.users" :name="this.name"> </BoardMenu>
    <div class="boardContent">
      <Backlog></Backlog>
      <div class="lists">
        <List
          class="list"
          v-for="list in lists"
          :key="list.id"
          :id="list.id"
          :items="list.items"
          
        ></List>
      </div>
    </div>
  </div>
</template>

<script>
import BoardMenu from "./BoardMenu";
import Backlog from "./Backlog";
import List from "./List";
export default {
  name: "UserIcon",
  props: {
    id: Number
  },
  components: {
    BoardMenu,
    Backlog,
    List
  },
  data() {
    return {
      name: "BOARDNAME",
      users: [{ name: "Bram Coenders" }, { name: "Jasper van der Zwaan" }],
      lists: [
        {
          id: 1,
          items: [
            {
              type: "story",
              id: 1,
              listId: 1
            },
            {
              id: 2,
              listId: 1
            },
          ]
        },
        { id: 2, items: [] }
      ],
      backlog: { id: 2 }
    };
  },
};
</script>

这是List组件:

<template>
  <div class="list">
    <div class="list-header">
      <h2 id="list-name">{{ name }}</h2>
      <p id="list-description">{{ description }}</p>
    </div>
    <draggable
      v-model="items"
      :list="this.id"
      class="list-list"
    >
      <div :id="item.id" class="list-item" v-for="item in items" :key="item.id">
        <div v-if="item.type == 'story'">
          <Story class="story" :id="item.id"></Story>
        </div>
        <div v-else>
          <Task class="task" :id="item.id"></Task>
        </div>
      </div>
    </draggable>
  </div>
</template>

<script>
import draggable from "vuedraggable";
import Story from "./Story.vue";
import Task from "./Task.vue";
export default {
  name: "List",
  components: {
    Story,
    Task,
    draggable
  },
  props: {
    items: []
  },
  data() {
    return {
      name: "To do",
      description: "this sprint."
    };
  },
  methods :{
    newItem: function(){
      console.log("test")

    }
  }
};
</script>
贝尔科宾

添加:options='{group: "items"}'到您的可拖动组件中,或者您可以尝试添加属性group="items"(如果您使用的是Vue 2.2+)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何让我的JQueryUI可拖动元素浮动到另一个溢出的元素中?

如何使组件显示在可拖动组件列表中(对于parsys)?

将一个用户控件中的列表视图中的项目拖动到另一个用户控件中的画布

如何使用jQuery将一个div拖动到另一个div?

如果按下另一个组件中的链接,如何更新组件中的列表?

PyQt5可拖动图标从列表视图到另一个

Vue拖动一个玩家名称,拖动整个列表

可拖动的 vue 组件

VueJs:在另一个组件内部使用组件

如何从另一个组件“隐藏/显示”“可扩展项目”组件(类星体)

如何使用影片剪辑作为 AS3 中另一个可拖动对象的边界?

jQuery拖放-一个具有可排序列表,另一个具有可拖动和可拖放列表,但没有排序

如何将项目从 1 个列表移动到 HTML 中的另一个列表

如何从vue.js中的另一个组件更新一个组件

在 Vue 上,如何在另一个组件中使用一个组件中的函数?

jQuery可嵌套无法拖动到一个空列表

如何通过拖动JSXGraph中的另一个元素来拖动滑翔机

在将组件移动到另一个父组件中时如何保存组件的实例?

如何将项目一直拖动到以前的位置,直到在可拖动的Vue中释放

如何从另一个项目列表中过滤一个项目列表?

如何在离子中的另一个组件中使用一个组件?

将项目从一个div拖动到另一个div并进行排序

如何从另一个可重用组件和容器组件访问可重用组件

以编程方式将项目从一个可排序的已连接列表移动到另一个

如何在python中将项目从一个列表移动到另一个列表?

在共享同一父级的另一个组件中提交表单后,如何刷新一个组件中的列表?

如何将JLabel从JFrame中的一个JPanel拖动到同一JFrame中另一个JPanel的JTextField中?

jQuery Sortable在拖动时无法将列表追加到另一个

扑。将可拖动项拖到另一个可拖动项上