想要获取标签但视图中未显示任何内容

want to get label but nothing is shown in the view

函数被 AngularJS

中的表达式过度调用

我想在选项标签中获取绑定到 selectedType 值的标签,但视图中没有显示任何内容,并且在控制台中有很多调用

view.jsp

<select ng-if="RCDModel.id!=-1" class="form-control overloadDC"
        title="blablabla" disabled>
    <option value="{{RCDModel.selectedType}}"> 
      {{exprModelType(RCDModel.selectedType)}}
    </option>                                   
</select>

Controller.js

$scope.exprModelType = function(typeModel) {
    if (typeModel != undefined) {
        $scope.reunionType.forEach(function (type) {
            console.log("TYPE: "+type);
            if (type.id == typeModel) {
                console.log("TYPE ID: "+type.id);
                console.log("TYPE ID: "+typeModel);
                console.log("Libele: "+type.libelle);
                return type.libelle;
            }
        });
    }
    return "";
}

forEach 块中的 return 语句不会 return 向父函数赋值。

改为使用array.find:

$scope.exprModelType = function(typeModel) {
    if (typeModel != undefined) {
        var idMatch = $scope.reunionType.find( _ => _.id == typeModel.id );
        console.log("TYPE: "+idMatch); 
        console.log("TYPE ID: "+idMatch.id);
        console.log("TYPE ID: "+idModel);
        console.log("Libele: "+idMatch.libelle);
        return idMatch ? idMatch.libelle : "";
    }
    return "";
}

有关详细信息,请参阅