敲除排序 'dragged' 回调不工作

knockout-sortable 'dragged' callback not working

我正在尝试改编来自 knockout-sortable 的示例 fiddle,以便使用 'dragged' 回调而不是默认的 'clone' 函数。

http://jsfiddle.net/mp2k170t/1/

我向根视图模型添加了一个 'makeNewTask' 方法,如下所示:

self.makeNewTask = function(task, event, ui) {
    alert('make new task');
    return new Task(task.name() + " (created by makeNewTask)");
}

我正在尝试使用此绑定到它:

<div class="item" data-bind="draggable: { data: newTask, isEnabled: allowNewTask, dragged: $root.makeNewTask }">

但是,克隆方法仍在调用。我做错了什么?

dragged 回调仅在 sortable 绑定中可用。

如果您将可排序绑定更改为

<div class="container" data-bind="sortable: {data: tasks, dragged: $root.makeNewTask}">

和可拖动绑定

<div class="item" data-bind="draggable: { data: newTask, isEnabled: allowNewTask  }">

应该可以。使用 dragged 作为 clone 的替代方法。因此,如果使用 dragged 选项,您可能会考虑从原型中删除 clone 方法。

Fiddle