如何以 angular 2 的动态形式订阅值
how to subscribe for values in dynamic form of angular 2
我正在将值从一个组件传递到另一个具有动态形式的组件,但在该组件中,未收到值。我不知道我在将值传递给动态表单时是否做错了什么,或者这不是动态表单接收值的方式。
我没有贴完整的代码,否则会太大,所以我只提到了相关的代码。如果需要更多说明,请告诉我。
在 AdminService 中,这是服务 class,其中主题定义如下:
startedEditingItem=new Subject<string>();
在 ProductItemsComponent 中,值如下发送到另一个组件。
onEdit(index:number){
console.log("on edit"+this.productId+":"+this.childProductId+":"+index)// This is being printed , so value is sent
this.adminService.startedEditingItem.next(this.productId+":"+this.childProductId+":"+index);}
在 ItemEditComponent 中,订阅值如下
ngOnInit() {
console.log("edit item on init") // printed on console
this.subscription=this.adminService.startedEditingItem.subscribe(
(id:string)=>{
console.log("edit item>"+id); // not printed on console.so value is not received
this.initForm();});
this.initForm();}
你真的需要Subject
吗?您或许可以在不使用 Subject
的情况下使用简单的服务更轻松地进行交流。例如:
import { Injectable } from '@angular/core';
@Injectable()
export class DataService {
serviceData: string;
}
您可以在此处找到更多详细信息:https://blogs.msmvps.com/deborahk/build-a-simple-angular-service-to-share-data/
还有一个笨蛋:
我正在将值从一个组件传递到另一个具有动态形式的组件,但在该组件中,未收到值。我不知道我在将值传递给动态表单时是否做错了什么,或者这不是动态表单接收值的方式。
我没有贴完整的代码,否则会太大,所以我只提到了相关的代码。如果需要更多说明,请告诉我。
在 AdminService 中,这是服务 class,其中主题定义如下:
startedEditingItem=new Subject<string>();
在 ProductItemsComponent 中,值如下发送到另一个组件。
onEdit(index:number){
console.log("on edit"+this.productId+":"+this.childProductId+":"+index)// This is being printed , so value is sent
this.adminService.startedEditingItem.next(this.productId+":"+this.childProductId+":"+index);}
在 ItemEditComponent 中,订阅值如下
ngOnInit() {
console.log("edit item on init") // printed on console
this.subscription=this.adminService.startedEditingItem.subscribe(
(id:string)=>{
console.log("edit item>"+id); // not printed on console.so value is not received
this.initForm();});
this.initForm();}
你真的需要Subject
吗?您或许可以在不使用 Subject
的情况下使用简单的服务更轻松地进行交流。例如:
import { Injectable } from '@angular/core';
@Injectable()
export class DataService {
serviceData: string;
}
您可以在此处找到更多详细信息:https://blogs.msmvps.com/deborahk/build-a-simple-angular-service-to-share-data/
还有一个笨蛋: