Angular 将信息从一个角度组件传递到另一个角度组件
(如果这是一个重复的,请让我知道。我发现了类似的线程,但无法找到答案的解决方案) 我有一个组件,它调用他们的子组件(modal#1),而子组件又可以调用另一个modal(modal#2)。模态#1只是一种标准形式。如果其中一个字段缺少用户想要的选项,则可以触发modal#2添加该字段Angular 将信息从一个角度组件传递到另一个角度组件,angular,Angular,(如果这是一个重复的,请让我知道。我发现了类似的线程,但无法找到答案的解决方案) 我有一个组件,它调用他们的子组件(modal#1),而子组件又可以调用另一个modal(modal#2)。模态#1只是一种标准形式。如果其中一个字段缺少用户想要的选项,则可以触发modal#2添加该字段 我想知道的是,如何将数据从模态2传递到模态1,以便通知模态1添加了新元素,并且它应该在其各自的表单字段中使用它作为默认值?在模态之间交换信息的最佳方式是使用服务。 我可以向您展示的最佳解决方案如下: 使用最后一种方
我想知道的是,如何将数据从模态2传递到模态1,以便通知模态1添加了新元素,并且它应该在其各自的表单字段中使用它作为默认值?在模态之间交换信息的最佳方式是使用服务。 我可以向您展示的最佳解决方案如下:
使用最后一种方法:)在不同模态之间交换信息的最佳方法是使用服务。 我可以向您展示的最佳解决方案如下:
使用最后一种方法:)大多数情况下,您应该使用
@Input
和@Output
有时,如果不可能,例如由于
的原因,您可以向这两个组件注入服务,并通过rxjs的主题/行为主题进行通信
服务代码
public subject$: Subject<any> = new Subject<any>();
组件2中的代码
constructor(private _serviceName: SomeService){
this._serviceName.subject$.next(anyData); // send data
}
别忘了取消订阅主题的OnDestroy强>
这是你自己做的习惯方式。大多数库都内置了与动态生成的组件作为模态进行通信的方式
大多数情况下,您应该使用
@Input
和@Output
有时,如果不可能,例如由于
的原因,您可以向这两个组件注入服务,并通过rxjs的主题/行为主题进行通信
服务代码
public subject$: Subject<any> = new Subject<any>();
组件2中的代码
constructor(private _serviceName: SomeService){
this._serviceName.subject$.next(anyData); // send data
}
别忘了取消订阅主题的OnDestroy强>
这是你自己做的习惯方式。大多数库都内置了与动态生成的组件作为模态进行通信的方式
使用材质对话框。并获取它的返回值。您可以从对话框1打开对话框2。如果要将数据从父级传递到子级,请使用
@Input
,如果要将数据从子级传递到父级,请使用@Output
,使用“材质”对话框。并获取它的返回值。您可以从dialog1打开dialog2。如果要将数据从父级传递到子级,请使用@Input
,如果要将数据从子级传递到父级,请使用@Output