我正在使用 Angular JS 和 Angular UI(通过 gem:angular-ui-rails),今天我被模块依赖所困扰。如果有人有想法!
我想在我的应用程序上添加可排序模块(https://github.com/angular-ui/ui-sortable),如下所示:
问题是我已经加载了 UI-bootstrap 模块,所以我尝试这样做:
在 app.js 上:
angular.module('ui', ['ui.bootstrap','ui.sortable']);
在 controllers.js 上
function dndCtrl($scope) {
$scope.list = ["one", "two", "three", "four", "five", "six"];
}
应用程序中加载的 sortable.js文件。js的顺序是:
//= require jquery
//= require jquery_ujs
//= require underscore
//= require angular.min
//= require ./angular/controllers/app.js
//= require_tree ./angular
//= require_tree .
因此 sortable.js 文件在 app.js 之后和 ui-bootstrap js 文件之前加载(在 ./angular 树中)
然后最后:我的 html 文件带有一个带有角度的简单列表循环:
<html ....... ng-app="ui">
.....
<div ng-controller="dndCtrl">
<ul ui-sortable ng-model="list">
<li ng-repeat="item in list" class="item">{{item}}</li>
</ul>
<hr />
</div>
循环运行良好且 UI 引导程序(在我的情况下也是 Typeahead)但不可排序且控制台呈现
TypeError: Object [object Object] has no method 'sortable'
我做错了什么或错过了什么?