当 ng-model 和 ng-options 引用不同的对象时,如何使用 ng-init select select 框中的默认值

How to use ng-init to select a default value in a select box when the ng-model and the ng-options are referencing different objects

我有一个迭代 listOfThings 的 select 框,模型有一个 currentThing 属性。 select 框正确绑定到 currentThing

但是,我无法让 ng-initlistOfThings 中的默认值设置为 currentThing。以下未设置默认值。

 <select ng-options = "someThing as someThing.name for someThing in controller.listOfThings"
                                ng-model = "controller.currentThing"
                                ng-init = "someThing = controller.currentThing"
                                ng-change = "controller.changeThing(controller.currentThing)"/>

我输出了someThingcurrentThing的值,它们是一样的。

有什么想法吗?谢谢!

与其在 DOM 中使用,不如在 controller

中分配默认值

喜欢:

$scopr.controller.currentThing = $scopr.controller.listOfThings[0];// first element or as your need

然后就不需要了

ng-init = "someThing = controller.currentThing"