Я следую руководству по созданию стека MEAN по этой ссылке: https://thewikihow.com/video_wtIvu085uU0, однако я застрял на создании угловой части около 59:34. В учебнике используется angular2, а я - angular6. Основная часть, которая меня удерживает, - это contact.service.ts и получение работы методов addContacts, getContacts и deleteContact, поскольку метод .map изменился с момента angular 2. Я изменил его код с:
getContacts() {
return this.http.get('http://localhost:3000/api/contacts')
.map(res => res.json());
}
который возвратил ошибку «Свойство 'карта' не существует в типе« Наблюдаемый »» для
getContacts() {
return this.http.get('http://localhost:3000/api/contacts')
.pipe(
.map(res => res.json())
);
}
который теперь возвращает «ОШИБКА в src / app / contact.service.ts (17,7): ошибка TS1135: ожидалось выражение аргумента». в консоли Я думаю, что я преодолел ошибку карты, но я не знаю, что означает ожидаемая ошибка выражения аргумента. У двух других методов была такая же проблема до и после изменения карты на канал. В настоящее время он не компилирует и не отображает страницу «Контакты работает», показанную в видео в 1:03:37. Консоль не показывает других ошибок в других классах, поэтому я думаю, что это единственная ошибка.





После переформатирования кода ответ очевиден. У вас есть ошибочный . до вашего звонка в map():
getContacts() {
return this.http.get('http://localhost:3000/api/contacts')
.pipe(
.map(res => res.json())
// ^ remove this period
);
}
Что бы Шон ни сказал, плюс вам нужно импортировать оператор map:
import {map} from 'rxjs/operators';
в начале файла