AngularJS: array[ {{value}} ] 导致我想忽略的解析错误

AngularJS: array[ {{value}} ] causes a parse error that I want to ignore

我有一个从控制器得到的选择列表,写成这样:

<select class="input form-control"
    id="animationTime"
    ng-options="item as item.label for item in aniCon.timeOptions track by item.id"
    ng-model="aniCon.popupTime"
    ng-init="aniCon.popupTime = aniCon.timeOptions[{{aniCon.popupTime.id}}]">
</select>

这会导致此处出现解析错误:aniCon.timeOptions[{...,预期值不是 {{..

问题是当页面加载时这个值 {{aniCon.popupTime.id}} 被视为 3 然后 html 是正确的:aniCon.popupTime = aniCon.timeOptions[3]

所以我想以某种方式忽略这个解析错误。

删除括号。对于 Angular 指令,不需要使用表达式

ng-init="aniCon.popupTime = aniCon.timeOptions[aniCon.popupTime.id]">

正如@Patrick 在评论中所说,您应该将初始化代码移至控制器。

$scope.aniCon = {};
// Get the object values here
$scope.aniCon.popupTime = $scope.aniCon.timeOptions[$scope.aniCon.popupTime.id];