gpt4 book ai didi

javascript - 如何让ng-options启用后运行?

转载 作者:行者123 更新时间:2023-11-28 04:09:00 25 4
gpt4 key购买 nike

所以,我有这两个下拉元素,第二个的输出将取决于第一个的输入。第二个下拉列表将第一个下拉列表的输入作为( ng-options="reason for Reason in getReason($ctrl.selectedItem))但是我意识到第二个下拉列表不会等待第一个下拉列表被选择并运行 ng-options ,而是因为它从第一个下拉列表中获取输入。它会导致 null 错误。

如何解决这个问题?

class Items{
constructor(){
this.items = ["item1", "item2", "item3"];
this.selectedItem = null;
this.stuff = {
"item1" : ["asdd"],
"item2" : ["asdasdsd", "asdsddd],
"item3" : ["asdasdasd]
};
}
getReason(item){
return this.stuff[item];
}
}
<select ng-model=“$ctrl.selectedItem” ng-options=“item for item in items”>
</select>
<select ng-disabled=“!$ctrl.selectedItem” ng-options=“reason for reason in getReason($ctrl.selectedItem)”>

最佳答案

更改您的 getReason,以便在 item 不是“有效”参数时返回空数组。

getReason(item){
item ? return this.stuff[item] : [];
}

注意:这将使第二个下拉列表保持为空,直到 item 参数有效。

关于javascript - 如何让ng-options启用后运行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46457729/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com