使用命令式对话框时如何为组件提供参数?
How do I provide parameters for the component when working with imperative Dialogs?
使用命令式对话框时,如演示页面所示:
let pDialog = this.dialogService.showCustomDialog({
component: LoginDialogComponent,
providers: [{provide: TEST_VALUE, useValue: 'Just an example'}],
isModal: true,
styles: {'width': '350px'},
clickOutsideToClose: true,
enterTransitionDuration: 400,
leaveTransitionDuration: 400
});
我如何为 LoginDialogComponent 提供参数,它是否需要一些参数?这可能吗?
提前致谢,
c
示例中已经有一些代码用于此用例。
providers: [{provide: TEST_VALUE, useValue: 'Just an example'}],
您可以使用它来将字符串 Just an example
注入到 LoginDialogComponent
的构造函数中。
在您必须按以下方式初始化 TEST_VALUE
之前:
const TEST_VALUE = new OpaqueToken("test_value");
然后你可以通过这种方式扩展你的组件构造函数来获取值:
constructor(@Inject(TEST_VALUE) private myValue: string) {}
或
除了字符串,您还可以传递一个对象。这看起来像这样:
providers: [{provide: TEST_VALUE, useValue: <IMyDialogArgs>{
foo: "foo",
bar: 0
}}],
使用命令式对话框时,如演示页面所示:
let pDialog = this.dialogService.showCustomDialog({
component: LoginDialogComponent,
providers: [{provide: TEST_VALUE, useValue: 'Just an example'}],
isModal: true,
styles: {'width': '350px'},
clickOutsideToClose: true,
enterTransitionDuration: 400,
leaveTransitionDuration: 400
});
我如何为 LoginDialogComponent 提供参数,它是否需要一些参数?这可能吗?
提前致谢, c
示例中已经有一些代码用于此用例。
providers: [{provide: TEST_VALUE, useValue: 'Just an example'}],
您可以使用它来将字符串 Just an example
注入到 LoginDialogComponent
的构造函数中。
在您必须按以下方式初始化 TEST_VALUE
之前:
const TEST_VALUE = new OpaqueToken("test_value");
然后你可以通过这种方式扩展你的组件构造函数来获取值:
constructor(@Inject(TEST_VALUE) private myValue: string) {}
或
除了字符串,您还可以传递一个对象。这看起来像这样:
providers: [{provide: TEST_VALUE, useValue: <IMyDialogArgs>{
foo: "foo",
bar: 0
}}],