Angular9:使用相同的组件进行用户创建和用户编辑
Angular 9: Using same component for user creation and user editing
如何使用一个组件同时进行编辑和创建?
表格将1:1相同。
我的编辑组件订阅了 url id 参数的更改,并相应地获取用户项目:
user: User;
constructor(private httpHandler: HttpHandlerService,
private route: ActivatedRoute) {
}
ngOnInit(): void {
this.route.params.subscribe(params => {
this.httpHandler.getUser(userId)
.subscribe(user => this.user = user);
});
}
创建(新用户)不应发生这种情况。我想使用一个空的用户对象而不订阅任何东西。
我应该只检查路由参数吗?或者有更好的方法吗?
通过检查 :id 参数来区分我的组件是处于 'create' 还是 'update' 模式。
user: User;
idParam: string;
ngOnInit(): void {
this.route.params.subscribe(params => {
this.idParam= params[`id`];
if (!!this.idParam) {
this.httpHandler.getUser(idParam)
.subscribe(user => this.user = user);
} else {
this.user = {
id: '',
name: ''
};
}
});
}
如何使用一个组件同时进行编辑和创建?
表格将1:1相同。
我的编辑组件订阅了 url id 参数的更改,并相应地获取用户项目:
user: User;
constructor(private httpHandler: HttpHandlerService,
private route: ActivatedRoute) {
}
ngOnInit(): void {
this.route.params.subscribe(params => {
this.httpHandler.getUser(userId)
.subscribe(user => this.user = user);
});
}
创建(新用户)不应发生这种情况。我想使用一个空的用户对象而不订阅任何东西。
我应该只检查路由参数吗?或者有更好的方法吗?
通过检查 :id 参数来区分我的组件是处于 'create' 还是 'update' 模式。
user: User;
idParam: string;
ngOnInit(): void {
this.route.params.subscribe(params => {
this.idParam= params[`id`];
if (!!this.idParam) {
this.httpHandler.getUser(idParam)
.subscribe(user => this.user = user);
} else {
this.user = {
id: '',
name: ''
};
}
});
}