Angular ui-select 不显示

Angular ui-select not displaying

我想使用 ui-select,但它没有显示任何内容,开发者控制台中也没有错误。我已经用谷歌搜索了几个小时了,我已经尝试了我发现的所有建议,但没有任何帮助。

我使用 Chrome 并且在我的 SPA 项目中包括了 Bootstrap 版本 3.3.4 和 Angular 版本 1.4.8。我还包括了 select.min.css 和 select.min.js 的最新版本。我在 Visual Studio 2015 年通过 NuGet 添加了 ui-select(版本 0.19.5)到我的项目中。

在尝试隔离问题时,我已将我的代码缩减为一个非常简单的示例。这是我现在拥有的(这是我的观点):

<div id="damageType" name="damageType" class="col-md-4">
    <ui-select ng-maxlength="10">

        <ui-select-choices repeat="f in ['light','hpexp']">
            {{ f }}
        </ui-select-choices>
    </ui-select>
</div>

我试过像这样添加一个 ng-hide,但无济于事:

<div id="damageType" name="damageType" class="col-md-4">
    <ui-select ng-maxlength="10">

        <ui-select-choices repeat="f in ['light','hpexp']" ng-hide="!$select.open">
            {{ f }}
        </ui-select-choices>
    </ui-select>
</div>

这是它在页面中的样子。应该显示下拉菜单的 div 在那里,但它的高度是 1。另外,如您所见,控制台中没有错误:

这可能是什么问题?

嗨,我认为你遗漏了两件事。

  1. ui-select 需要一个 ngModel 所以定义这个 ng-model='selectedvalue'
  2. 其次,我认为它需要一个 ui-select-match,因为这是嵌入所必需的

下面的代码应该可以工作:

<ui-select ng-model="ctrl.selected">
 <ui-select-match placeholder="Enter an thing...">{{$select.selected}}</ui-select-match>
 <ui-select-choices repeat="item in ['1','2']">
  <span>{{item}}</span>
</ui-select-choices>