我想使用if语句仅在console.log中有一个“ todo.title”。但是当我写出if语句时,if语句下方会出现一条红线。
所有初始待办事项都来自http://jsonplaceholder.typicode.com/todos。然后,通过输入框添加了新行“ test”。当我单击“ delectus aut autem”复选框时,它显示了正确的console.log。但是,当我单击“测试”复选框时,它在控制台中显示了该错误消息。
我正在尝试更改代码,以便仅对来自jsonplaceholder网站的项目进行控制台,而我试图通过说“仅当有todo.title,然后是console.log,但如果没有,请不要console.log任何东西,这是我的新代码:
onToggle(todo) {
// Toggle in UI
todo.completed = !todo.completed;
// Toggle on server
this.todoService.toggleCompleted(todo).subscribe(
todo => {
if (todo.title) {
console.log(todo);
}
});
}
答案 0 :(得分:4)
应为.subscribe( () => { <your code (if...)> } );
答案 1 :(得分:1)
我认为您可能需要以下内容,因为如果比较相同的两个对象,则if语句将始终为true。
onToggle(todo){
//Toggle in UI
todo.completed = !todo.completed;
//Toggle on server
this.todoService.toggleCompleted(todo).subscribe( ()=>
if(todo.title){
console.log(todo.title);
}
);
}