我无法让 Angular UI Select2 模块工作。我能想到的最简单的例子如下,源自 AngularJS 教程。
Github 项目 ( https://github.com/angular-ui/ui-select2 ) 上的说明,我只需要包含 jQuery、Angular 和 Angular UI 的 select2.js。但后来我只得到错误: TypeError: Object [object Object] has no method 'select2'
包括 Select2 没有错误,但我将选择标记的占位符文本作为链接,然后是两个空文本输入字段,一个常规选择下拉列表。当我在选择下拉列表中选择某些内容时,它的值会替换占位符文本。单击链接会清空页面,尝试在文本框中输入内容也是如此。
我已经使用 Yeoman 的 generator-angular 作为基础,在多个浏览器和平台上进行了测试。我尝试了旧版本的 Angular UI 的 select2.js,但行为没有改变。搜索没有找到任何相关的东西,我发现的工作示例是在 Angular UI 分解为模块之前。
我做错了什么还是这是一个错误?
html:
<!doctype html>
<html ng-app="anguish">
<head>
<script type="text/javascript" src="components/jquery/jquery.js"></script>
<script src="components/angular/angular.js"></script>
<script type="text/javascript" src="components/select2/select2.js"></script>
<script type="text/javascript" src="components/angular-ui-select2/src/select2.js"></script>
<script type="text/javascript" src="foo.js"></script>
</head>
<body>
<div>
<select ui-select2 ng-model="select2" data-placeholder="Pick a number">
<option value=""></option>
<option value="one">First</option>
<option value="two">Second</option>
<option value="three">Third</option>
</select>
</div>
</body>
</html>
foo.js:
'use strict';
angular.module('anguish', ['ui.select2'])
.controller('MainCtrl', function ($scope) {
$scope.select2 = null;
$scope.select2Options = {
allowClear:true
};
});