无法使AngularUI可排序演示工作

时间:2013-04-26 15:04:45

标签: angularjs angular-ui

无法获得angular-ui的简单可排序演示 - http://jsfiddle.net/B3YDr/

<div ng-app="myApp" ng-controller="myCtrl">
<ul ng-model="items" ui-sortable>
    <li ng-repeat="item in items">{{item}}</li>
</ul>
<pre>{{items}}</pre>
</div>


angular.module('myApp', ['ui']);
var myCtrl = function($scope) {
    $scope.items = ['One','Two','Three'];
};
  • 包含jQuery&amp; jQueryUI的
  • 包含AngularJS
  • 包含AngularUI
  • 添加'ui'模块作为依赖

我在这里http://angular-ui.github.io/#directives-sortable复制了示例代码,但仍然无法重新排序列表项。

有谁可以指出什么是错的?感谢

2 个答案:

答案 0 :(得分:5)

您需要控制脚本的导入顺序:

http://jsfiddle.net/B3YDr/4/

在角度为角度之前放置jquery以将其用作元素服务。

<div ng-app="myApp" ng-controller="myCtrl">
    <ul ng-model="items" ui-sortable>
        <li ng-repeat="item in items">{{item}}</li>
    </ul>
    <pre>{{items}}</pre>
</div>

<script src="http://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.10.2/jquery-ui.min.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.1.3/angular.min.js"></script>
<script src="http://cdnjs.cloudflare.com/ajax/libs/angular-ui/0.4.0/angular-ui.min.js"></script>
<script src="http://cdnjs.cloudflare.com/ajax/libs/angular-ui-bootstrap/0.2.0/ui-bootstrap-tpls.js"></script>

答案 1 :(得分:0)

您可以使用sortableOptions中的方法,如下面的代码

$scope.sortableOptions = {
            handle: '.custom-ctrl-handle',
            stop: function(e, ui) {
                // console.log("stop function worked");
            }
        };