首先让我告诉你,我是html / js开发的初学者。
使用 angular-ui 允许对列表进行排序(ul),在执行 SOME 操作时,数组会丢失与列表的同步。
从:
开始$scope.list = ["one", "two", "three", "four"];
和html:
<ul ui:sortable ng:model="list">
<li ng:repeat="item in list" class="item">{{item}}</li>
</ul>
当我在第二个和第三个之间拖动(示例)第一个 li 元素时,它会在 ul 中更改位置,但是有界项目仍然位于列表中的相同位置数组。
>angular.element($(".ng-scope")).scope().list
["one", "two", "three", "four"];
我创建了一个jsfiddle并且可以测试该行为: http://jsfiddle.net/DmLt2/
如果我们稍微玩一下,就可以观察到其他奇怪的行为。
JQuery 1.9.1,JQueryUI 1.10.3,Angular 1.2.2,AngularUI 0.4.0
与此同时,我在网上找到了一个jQuery UI Sortable插件包装器。经过微小的改动,我设法让它在这里工作: http://jsfiddle.net/42VCK/
然而,它需要删除对AngularUI的引用或更改模块名称。
任何人都可以给我一些帮助吗?
答案 0 :(得分:1)
不确定你使用的是什么角度ui,但它已经过时了。最新的ui-sortable托管在https://github.com/angular-ui/ui-sortable。重要提示,要与AngularJS 1.2.x一起使用,您需要根据自述文件使用ui-sortable分支angular1.2
:https://github.com/angular-ui/ui-sortable/tree/angular1.2
使用上述来源,以下jsfiddle基于您的示例,除非使用正确的ui可排序来源:http://jsfiddle.net/BuLdk/1/