[英]Angular: Passing a function to dumb component
我正在使用Angular和ngrx編寫AWS安全組模塊克隆。 我試圖將一種方法傳遞給啞組件以創建新的安全組。
... const schemas: any[] = []; @NgModule({ imports: [ CommonModule ], declarations: [ SecurityGroupsComponent, SecurityGroupsTableComponent, SecurityGroupsListComponent ], schemas: schemas, exports: [SecurityGroupsComponent] }) export class SecurityGroupsModule { }
import { Component } from '@angular/core'; @Component({ selector: 'app-security-groups-table', templateUrl: './security-groups-table.component.html', }) export class SecurityGroupsTableComponent { onCreateSecurityGroup() { console.log('Create Security Group'); } }
<app-security-groups-list [createSecurityGroup]="onCreateSecurityGroup"></app-security-groups-list>
import { Component, Input } from '@angular/core'; @Component({ selector: 'app-security-groups-list', templateUrl: './security-groups-list.component.html', }) export class SecurityGroupsListComponent { @Input() createSecurityGroup: Function; selectSecurityGroup(securityGroupId: string) { this.securityGroupSelected.next(securityGroupId); } }
當呈現模板時,我會遇到以下異常:無法綁定到“ createSecurityGroup”,因為它不是“ app-security-groups-list”的已知屬性。
我究竟做錯了什么?
似乎您錯過了將SecurityGroupsListComponent
添加到NgModule
。
使用它之前,請確保執行以下步驟:
@NgModule({
imports: [...],
declarations: [SecurityGroupsListComponent]
})
export const DECLARATIONS = [SecurityGroupsComponent,
SecurityGroupsTableComponent,
SecurityGroupsListComponent]
接着
declarations: DECLARATIONS,
schemas: schemas,
exports: DECLARATIONS
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.