目的
我的目标是创建一个页面,用户可以在其中将一组预定义的列名称从已加载的文件中拖动到列标题。该页面将允许他们将静态标题拖动到文件标题,以便在我们匹配它们之前映射它们到我们的数据库。
问题
我的所有掉落都会引发控制台错误:
- 放入同一个数组会抛出:
未捕获类型错误:对象不是函数
- 在文件头中删除可用头会抛出:
未捕获类型错误:对象[对象数组]没有方法“删除”
- 从文件头返回到可用的抛出:
未捕获类型错误:对象不是函数
示例
这是我正在使用的jsfiddle:http://jsfiddle.net/micah0152/PrSWu/1/
更多详细信息
我希望能够拖动可用标题并将其放在列上方。然后,当用户满意时,我需要获取两者之间的关联(并单击尚不存在的“保存”按钮。)
可悲的是,我一开始就陷入困境。我希望这是一个简单的问题,因为我对 knockout 还很陌生。
提前致谢。
最佳答案
需要将可用 header 包装在 ko.observableArray 中 - 我也花了一段时间才发现你的错误!
self.availableHeaders = ko.observableArray([
new MappedHeader("Company"),
new MappedHeader("Address 1"),
new MappedHeader("Address 2"),
new MappedHeader("City"),
new MappedHeader("State"),
new MappedHeader("Zip"),
new MappedHeader("Country")
]);
编辑:错误是说sourceParent(对象被移动的容器)没有remove() 函数。它没有删除函数,因为它不是 ko.observableArray。因此,为了解决这个问题,我用 ko.observableArray() 包装了数组,现在它具有所有内置的 KO 功能。
关于knockout.js - 可 knockout 排序和掉落元素会引发控制台错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15559149/