javascript - 如何在Angular JS中获取数组元素?

标签 javascript angularjs

In html
<select class="element-margin-top" ng-model="vm.selectedRole" ng-options="(roleName,enabled) in vm.roleNames">
                <option value="">All Roles</option>{{vm.roles[0]}}
            </select>

我想显示选择选项中的所有数组元素。我不明白这是怎么回事。它给了我与 vm.roleNames 中的 (roleName,enabled) 相关的错误

In js:
 var vm = this;
 vm.roleNames = ['SuperAdmin','Admin','Retailer','Manufacturer'];
 vm.selectedRole = vm.roleNames[-1];

我希望默认选择第一个元素。

最佳答案

ng-options="(roleName,enabled) in vm.roleNames" 在本例中,vm.roleNames 是一个数组,因此 roleNameindexenabled 是真正的“roleName”

所以你的代码应该如下所示:

<select class="element-margin-top" ng-model="vm.selectedRole" ng-options="(index,roleName) as roleName in vm.roleNames">
         <option value="">All Roles</option>
</select>

关于javascript - 如何在Angular JS中获取数组元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32747294/

相关文章:

javascript - 这个表单元素叫什么以及如何做

Javascript 图像 "onabort"事件未在 Firefox 和 Chrome 中触发

javascript - __proto__ 什么时候有用?

angularjs - IE 在使用 NTLM 身份验证时随机发送空 POST 正文(使用 Angular 到 Spring)

javascript - AngularJS 1.1.5 - 自动向 URL 添加散列标签

javascript - before- 和 afterEach 泄漏到其他测试

javascript - Angular-google-maps:如何在标记上动态显示标题和描述

javascript - 如何将数据从 EJS 模板传递到 AngularJS Controller

jquery - 标题中的样式按钮和选项卡

css - 垂直居中 Angular Bootstrap 模式窗口