使用AngularJS,在我的应用程序中创建了一个addTodo函数。
我似乎遇到了实现检查正在添加到数组中的对象唯一性的问题,并在其后跟随其他操作。
到目前为止,我能够使附加操作正常工作,但无法进行初始的唯一性检查。我该如何实现唯一性检查并在其后跟随其他操作?
我试图创建的addTodo函数流程如下(加粗表示未实现):
检查todo是否已经存在于todos中
1a. 如果它已经存在,则不要推入并显示警报
检查todo是否为空
2a. 如果为空,则不要推入并显示警报
如果唯一且不为空,则推入todos,并显示成功消息
当前的addTodo函数(不包括唯一性检查):
$scope.addTodo = function(){
$scope.isVisible = true;
if ($scope.todo) {
$scope.todos.push($scope.todo);
$scope.todo = '';
$scope.alert = $scope.alerts[1];
}else{
$scope.alert = $scope.alerts[0];
}
};
注意1: $scope.alert
和 $scope.alerts
用于显示某些错误消息;
$scope.alerts[0]
请在您的任务中添加文本。
$scope.alerts[1]
"添加了一个新任务!"
如果要添加的任务已经存在,我想要显示的警报是
$scope.alerts[3]
"该任务已经存在于列表中。"
注2:$scope.isVisible
可以切换警告框的可见性。
todo
是一个简单的字符串还是一个对象? - Chandermani