从$ firebaseArray()

时间:2015-08-22 08:15:19

标签: angularjs firebase

我有一个基于$ firebaseArray()的简单选择列表。我没有问题将值放入drop中。只是选中的值。

<select class="form-control" ng-model="vm.selectedRole"
                             ng-options="role.name for role in vm.allRoles">
</select>

$ firebaseArray看起来像这样

enter image description here

在我的控制器中,使用select初始化表单的函数是

 Get.getParentUrl('roles').$loaded()
    .then(function (data) {
          vm.allRoles = Get.getParentUrl('roles');
          vm.selectedRole = entity.role.name;
    })

这会填充select,但不会在vm.selectedRole上为其设置所选值。请注意,entity是传递的值,所以如果我写了

console.log(entity.role.name);

返回的值是正在传递的选定值。因此,如果用户选择具有&#34;主管&#34; 的用户并在console.log(vm.selectedRole)内写.then(function(data){,则返回的值为&# 34;主管&#34;

然而,html会显示&#34;?&#34;

enter image description here

1 个答案:

答案 0 :(得分:0)

我通过添加像这样的vm.selectedRole

来实现它
vm.selectedRole =  { name: entity.role.name };

我认为哪个有效。

虽然语法看起来有点糟糕

https://docs.angularjs.org/api/ng/directive/ngOptions