角KendoGrid不会通过@Input变量将值传递给子网格

问题描述 投票:0回答:1

我在将值传递给子网格时遇到麻烦。其他所有内容都可以,但是我的输入变量总是未定义。其他人遇到过这个问题吗?我一直在寻找答案,但没有骰子。这是我的主网格声明:

  selector: 'app-invoice-matching-grid',
  templateUrl: './invoice-matching-grid.component.html',
  styleUrls: ['./invoice-matching-grid.component.css'],
  template: `
        <kendo-grid 
          [data]="gridView" 
          [height]="600"

        (pageChange)="pageChange($event)"
        (dataStateChange)="dataStateChange($event)"
          >
          <kendo-grid-column >
          </kendo-grid-column>
          <div *kendoGridDetailTemplate="let dataItem">
              <app-invoice-line-items [category]="96"></app-invoice-line-items>
          </div>
        </kendo-grid>
    `
})

这是我的子网格:

import { Component, ViewChild, Input, OnInit } from '@angular/core';
import { HttpClient } from '@angular/common/http';
import { Observable } from 'rxjs';
import { GridDataResult, GridComponent, PageChangeEvent } from '@progress/kendo-angular-grid';
import {Invoice, InvoiceLineItem} from 'src/app/invoice-matching-grid/invoice-matching-grid.component'

@Component({
  selector: 'app-invoice-line-items',
  templateUrl: './invoice-line-items.component.html',
  styleUrls: ['./invoice-line-items.component.css'],
  template: `
      <kendo-grid
          [data]="invoices"
          [pageSize]="5"
          [skip]="skip"
          [pageable]="true"
          scrollable="none"
          (pageChange)="pageChange($event)"

          [navigable]="true"
          kendoGridFocusable
        >

        <kendo-grid-column>
          </kendo-grid-column>
      </kendo-grid>
  `
})
export class InvoiceLineItemsComponent implements OnInit {

  @Input() public category: string;

  public view: Observable<GridDataResult>;
  public skip = 0;

  public invoices: Invoice[];

  constructor(http: HttpClient) {
    console.log(this.category);
   }

  public ngOnInit(): void {

  }

}

非常感谢您的帮助!

angular kendo-grid
1个回答
0
投票

ngOnInit钩中有可用的输入,而构造器中尚无输入:

constructor(private http: HttpClient) {}

ngOnInit(): void {
   console.log(this.category);
}
© www.soinside.com 2019 - 2024. All rights reserved.