- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我正在使用 vue 可拖动组件将对象从一个 div 拖放到另一个 div。我还使用 filterBy 过滤 v-model
。问题是当我过滤(例如得到 1 个结果)并尝试拖放所有项目中的第一个项目而不是拖动的项目时。
拖拽自:
<draggable :list="available" class="draggable" :options=" group:'stuff'}">
<div v-for="people in filterBy(available, filter_available, 'name')" class="list-item">
<img :src="image" height="20"> {{ name }}
</div>
</draggable>
掉落到:
<draggable :list="drop" class="draggable" :options="{group:'stuff'}">
<div v-for="people in filterBy(drop, filter_doppred, 'name')" class="list-item">
<img :src=image" height="20"> {{ name }}
</div>
</draggable>
就其本身而言,这两个功能都运行良好。但是,在过滤结果时,它会更改元素的索引,并且在从一个列表移动到另一个列表时 - 我移动的是不同的项目,而不是拖动的项目。
有什么想法吗?
最佳答案
好吧,您必须将相同的列表传递给用于 v-for 的可拖动组件 - 两者都需要过滤后的结果。
您当前使用一种方法进行过滤操作。您不必两次调用此方法来在两个地方获得相同的结果。
您应该使用计算属性来避免重复执行相同的操作。
编辑:可拖动组件会改变提供的列表,这不会在您使用计算属性时影响您的源数据。
在查看了 vue-draggable 的文档之后,您可能应该使用组件 (https://github.com/SortableJS/Vue.Draggable#events) 提供的 change
事件来更新您的源数据。
我不能给你一个具体的例子,因为我不知道你的逻辑是什么来确定未过滤的源列表中移动元素的新位置。
关于javascript - Vue Draggable 不能与 filterBy 一起使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42845418/
我正在使用 vue.js 构建一个包含一长串所选项目的表单。我正在使用此处记录的动态选择列表:http://012.vuejs.org/guide/forms.html#Dynamic_Select_
如何使用 filterBy 函数使用多个值来过滤列表? 我的场景是 - 我有一个控制台列表,我想根据 console_id 对其进行过滤。 不幸的是,我无法控制 JSON,因此每个控制台都有不同的 I
我正在使用 Vue.js(目前为 v.1.x,将很快更新),我想要一个包含一些数据的表行表。我正在使用 Vue.js 组件通过 filterBy 过滤表行,但我希望在完成任何搜索/过滤之前隐藏表行。
如何通过在多个搜索键中搜索进行过滤? 我正在尝试这样的事情,但是(当然)它不会起作用: 最佳答案 filterBy 自定义过滤器没有文档 AFAIK,但您可以使用方法来制作您自己的过滤器: var
我正在尝试模拟 AngularJS 中的 OrderBy。 给定这种数组。我需要按 car_category 过滤汽车。 [ { "car_category": 3, "name"
我正在创建一个通过 filterKey 过滤的 filterBy 函数: filterBy (data, filterKey) { data = data.filter(function (row
我有一项服务可以管理我应用中的所有错误和警报。代码看起来像这样 服务 import Ember from 'ember'; export default Ember.Service.extend({
我正在尝试对通过 JSON 填充的表进行一些过滤(使用 bootstrap-table by wenzhixin )。 部分 HTML: Filter
目前使用 wenzhixin 的 Bootstrap Table 库。这里这个 https://github.com/wenzhixin/bootstrap-table 。我遇到了 filterby
我正在使用 Primefaces 的组件 p:dataTable,但在对对象列表进行排序时遇到了麻烦。 我有一个电子邮件列表,在此列表中我有另一个列表及其电子邮件别名。这是我的代码: public c
在 vue.js 中如何一个 filterBy 多个属性? 考虑以下数据结构。 new Vue({ el: body, data: { items: [ {name: 'thi
我正在使用 vue 可拖动组件将对象从一个 div 拖放到另一个 div。我还使用 filterBy 过滤 v-model。问题是当我过滤(例如得到 1 个结果)并尝试拖放所有项目中的第一个项目而不是
我正在使用 ExtJS 4.1。我正在使用商店的 clearFilter() 从商店中删除过滤器。我正在使用 filterBy 方法对商店应用过滤器。我正在过滤名称不是罗纳尔多的所有记录。 清除过滤器
假设我有一个具有 2 个属性的组件:我如何能够基于 localID 属性和 Ember.compulated.filterBy 宏创建计算属性? localID: 2, data: [ { i
我想通过来自第一个 ng-repeat 的动态值过滤第二个 ng-repeat。我的代码是: {{all.Category}} 我尝试了上面的代码,但第二个 ng-repeat
我正在尝试开发一个具有延迟加载的数据表。通过使用 UserService(即简单的 DAO),可以从持久化上下文中正确加载未过滤和已过滤的记录。我 100% 确定该问题与正在使用的 DAO 无关,因为
我是一名优秀的程序员,十分优秀!