Я получаю сообщение об ошибке компиляции при попытке подписаться на метод в службе, да, я возвращаю Observable.
Связанные версии взяты из стандартного углового шаблона .net core.
- Угловой => 4.4.4
- rxjs => 5.4.2
VS Ошибка кода
Ниже, login.component.ts со ссылками.
login.component.ts
import { Component, OnInit } from "@angular/core";
import { LoginViewModel } from "../models/ApplicationUserViewModel";
import { LoginService } from "../services/Login.service";
@Component({
selector: "app-login",
templateUrl: "./login.component.html",
styleUrls: ["./login.component.css"]
})
export class LoginComponent implements OnInit {
public loginViewModel: LoginViewModel;
constructor(private loginService: LoginService) {
this.loginViewModel = new LoginViewModel();
}
ngOnInit() {}
login(): any {
this.loginService.login(this.loginViewModel).subscribe(
result => {
alert("success");
},
error => {
alert("error");
}
);
}
}
Ниже, login.service.ts со ссылками.
login.service.ts
import { Injectable } from "@angular/core";
import { Observable } from "rxjs/Rx";
import { of } from "rxjs/observable/of";
import { HttpClient, HttpHeaders } from "@angular/common/http";
import { map } from "rxjs/operator/map";
import { LoginViewModel } from "../models/ApplicationUserViewModel";
const httpOptions = {
headers: new HttpHeaders({ "Content-Type": "application/json" })
};
@Injectable()
export class LoginService {
constructor(private http: HttpClient) {}
login(loginViewModel: LoginViewModel): Observable<any> {
return this.http.post<LoginViewModel>(
'account/login',
loginViewModel,
httpOptions
);
}
}
Спасибо.