我正在开发一个应用程序,其前端为angular2,后端为laravel。前端使用RESTful API与服务器通信。
前端有一个页面,其中一个角度组件从服务器获取数据并将其显示在屏幕上。我们假设我们有以下JSON响应
{
"books": [1, 2, 3],
"is_active": true,
"user": {
"first_name": "Munish",
"last_name": "Kumar",
"age": 25
}
}
现在,我是否应该直接从服务器响应中将对象属性插入到HTML中,如此{{ responseObj.user.first_name }}
?
OR
我应该首先在角度2模型类中转换服务器响应吗?
export class User {
firstName: string;
lastName: string;
age: number
constructor(fname, lname, age) {
this.firstName = fname;
this.lastName = lname;
this.age = age;
}
}
const u = responseObj.user;
let user = new User(u.first_name, u.last_name, u.age);
然后在HTML {{ user.firstName }}
如果我不在角度类中对服务器响应进行建模,那么在开发过程中服务器包含JSON响应的更改时,在使用这些属性的任何地方更改对象属性可能会非常繁琐。
有时似乎没有必要在将响应显示在页面上之前对其进行建模。
是否有适用的最佳做法或一般规则?
答案 0 :(得分:0)
最好为响应创建一个模型作为界面。将自定义对象上的接口实现为类型。
将订阅者下一个函数的响应分配给自定义对象,然后在组件模板上插入自定义对象。
这样您就可以确保响应始终符合您的对象模型。