我正在学习如何从这个链接构建一个均值堆栈的教程:https://www.youtube.com/watch?v=wtIvu085uU0,但是我在59:34左右创建了角度部分。本教程在我使用angular6的同时也在使用angular2。阻碍我的主要部分是contact.service.ts,以及如何让addContacts、getContacts和deleteContact方法工作,因为.map方法从angular 2开始就发生了变化。我将他的代码从:
getContacts() {
return this.http.get('http://localhost:3000/api/contacts')
.map(res => res.json());
}返回“属性'map‘在类型’Observable‘上不存在”错误到
getContacts() {
return this.http.get('http://localhost:3000/api/contacts')
.pipe(
.map(res => res.json())
);
}现在返回"ERROR in src/app/contact.service.ts(17,7):error TS1135: Argument expression expected“。在控制台中,我想我已经克服了map错误,但是我不知道参数表达式expected是什么意思。另外两种方法在将map更改为管道之前和之后都有相同的问题。现在,它不会编译和显示视频中1:03:37显示的“联系人作品”页面。控制台没有显示其他类中的其他错误,所以我认为这是唯一的错误。
发布于 2018-07-05 22:29:01
重新格式化代码后,答案是显而易见的。在调用map()之前您有一个错误的.
getContacts() {
return this.http.get('http://localhost:3000/api/contacts')
.pipe(
.map(res => res.json())
// ^ remove this period
);
}发布于 2018-07-05 22:32:27
不管Sean说了什么,再加上您必须在文件开头导入map操作符:import {map} from 'rxjs/operators';
https://stackoverflow.com/questions/51193742
复制相似问题