我想从我的api中获取模型。
为此,我使用以下方法:
[HttpGet]
public MyModel GetModel()
{
MyModel model = new MyModel() { ... };
return model;
}
如何获取角度的模型结果以及如何将MyModel
映射到角度模型?
我有以下内容:
getModel() {
var url = '/MyController/GetModel/';
this.http.get(url)
.map((data: Response) => {
return data.json() as MyModel;
})
.toPromise().then(x => {
this.myModel = x;
})
}
我在组件的ngOnInit
中调用。
但是我遇到一个错误:
Uncaught (in promise): SyntaxError: JSON.parse: unexpected end of data at line 1 column 1 of the JSON data
我的角度要求出了什么问题?
答案 0 :(得分:0)
http.get采用通用 所以你可以这样做。
getModel() {
var url = '/MyController/GetModel/';
this.http.get<MyModel>(url).toPromise().then(x => {
this.myModel = x;
});
}
除非您角度的模型与api中的模型不同
答案 1 :(得分:0)
我知道它是这样工作的:
getModel() {
var url = '/MyController/GetModel/';
return this.http.get(url)
.map((data: Response) => {
return data.json();
}).toPromise().then(x => {
this.myModel = new MyModel(x);
})
}
MyModel
必须具有接受json
字符串的构造函数。