我无法使Angular UI Select2模块正常工作。我想到的最简单的例子如下,源自AngularJS教程。
关于Github项目(https://github.com/angular-ui/ui-select2)的说明,我只需要包含jQuery,Angular和Angular UI的select2.js。但后来我只得到错误: TypeError:Object [object Object]没有方法'select2'
包括Select2没有错误,但是我将select tag的占位符文本作为链接,然后将两个空文本输入字段作为常规选择下拉列表。当我在选择下拉列表中选择某些内容时,它的值将替换占位符文本。单击该链接会清空页面,因此尝试向文本框输入内容。
我已经使用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
};
});
答案 0 :(得分:4)
如果您收到'没有方法select2',请尝试在select2.js
之前加angular.js
。
此外,您还需要select2.css
文件。它不会神奇地塑造自己的风格:)