Невозможно связать с заголовком, так как это не известное свойство page-header-component - PullRequest
0 голосов
/ 26 июня 2018
-app
 - app.module.ts
 - app.component.ts
 - +home
    - home.module.ts 
    - home.component.ts
    - home.component.html
    - utils
        - page-header-component
    - reports
         - reports.module.ts
         - report.routing.ts
         - components
            - waybill-sign-off
 - +<other "features">
  - shared
  - shared.module.ts

И я использую pager-header-component в домашнем модуле, а также в модуле отчетов, но я получил эту ошибку.

Невозможно выполнить привязку к заголовку, поскольку он не является известным свойством компонента page-header-component.

вот мой заголовок страницы:

export class PageHeaderComponent {
@Input() loading: boolean;
@Input() heading: string;
@Input() showSearch: boolean = true;
@Input() showPageSize: boolean = true;
@Input() showFilter: boolean = false;
@Input() showFilterIcon: boolean = false;
@Input() filterData: Array<FilterData>;

@Input() showDate: boolean = false;
@Input() showDD: boolean = false;
@Input() DDData: Array<any> = [];

Вот HTML:

<page-header-component [heading]="
   ('ADMIN.HEADER.WAYBILL_SIGNOFF'|translate)" 
   [showPageSize]="config.totalItems>10" [showDate]="true"
   [showSearch]="true" (searchChanged)="searchBy($event)" 
   (pageSizeChanged)="selectPagesize($event)" 
   (dateField)="onDateChange($event)">

Я использую PageHeaderComponent как в HomeModule, так и в ReportModule. но все равно получаю ошибку Не знаю почему так?

Вот мой домашний модуль ts

    declarations: [
           .
           .
    WayBillDetailComponent,
    PageHeaderComponent,
    ]

Есть ли необходимость экспортировать PageHeaderComponent? Эта проблема возникает не только для компонента заголовка страницы, но и для другого компонента. Я полагаю, что существует некоторая проблема со структурой модулей, которую я не могу найти за последние несколько дней, может кто-нибудь помочь. Спасибо заранее.

Ответы [ 2 ]

0 голосов
/ 11 июля 2018

Вам необходимо определить имена в скобках так же, как это:

@Input('loading) loading: boolean;
@Input('heading') heading: string;
@Input('showSearch') showSearch: boolean = true;
@Input('showPageSize') showPageSize: boolean = true;
@Input('showFilter') showFilter: boolean = false;
@Input('showFilterIcon) showFilterIcon: boolean = false;
@Input('filterData') filterData: Array<FilterData>;
@Input('showDate') showDate: boolean = false;
@Input('showDD') showDD: boolean = false;
@Input('DDData') DDData: Array<any> = [];
0 голосов
/ 11 июля 2018

Если вы привязываете пользовательский элемент, вам нужно указать CUSTOM_ELEMENTS_SCHEMA в вашем module, например:

import { NgModule,CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
@NgModule({
    ...Other Properties
    schemas: [CUSTOM_ELEMENTS_SCHEMA]
})
...