我正在学习AngularJs几周。我尝试了一个带有选择框的片段。首先我面对空选项问题,同时加载我google搜索并解决。现在,如果我通过动态删除选项,相同的空选项来了,我得到了此错误"value is undefined
"这是我的issue。提前致谢
答案 0 :(得分:1)
您已在初始化时删除了空选项,方法是将$scope.selected
属性分配给$scope.opt1
项之一。
从该列表中删除项目后,您必须再次这样做。
这是因为您删除了所选项目,现在您的$scope.selected
属性与任何现有属性都不匹配。
$scope.addOption = function(){
if($scope.selected !== undefined){
$scope.opt2.push($scope.selected);
$scope.opt1 = $scope.opt1.filter(function(value) {
return $scope.selected.name !== value.name;
});
$scope.selected = $scope.opt1[0];
}
};
此外,我已将$.each
更改为Array.prototype.filter
以防止错误抛出。