2017-05-05 5 views
1

이 코드는 json 배열 인 stacklist_table의 데이터를 반복하여 테이블 형식으로 표시합니다. stacklist_table은 모든 객체의 전체 목록입니다. 하지만 모든 물건을 필요로하지 않아 파이프를 몇 개 적용했습니다. 그리고 나서 마지막 값은 열 및 행을 표시하기 위해 아래에 반복되는 #stacklist로 유지됩니다.ts 파일에서 mfData 값을 가져 와서 각도 2로 작업을 수행합니다.

<table class="table" [mfData]="stacklist_table| selectedcolumn | search : searchQuery | filter: addFilter : selected" #stacklist="mfDataTable"> 
       <thead> 
       <tr> 
        <th *ngFor="let colValues of stacklist.data | column: '' : ''"> 
        <mfDefaultSorter by="{{colValues}}">{{colValues|translate}}</mfDefaultSorter> 
        </th> 
       </tr> 
       </thead> 
       <tbody> 
       <tr draggable *ngFor="let stack of stacklist.data" [dragOverClass]="'drag-over-border'" [dragData]="stack" [class.active]="checkIfStackElementIsSelected(stack)" (click)="setStacklistRow(stack)"> 
        <td *ngFor="let rowValues of stack | row">{{ rowValues }}</td> 
       </tr> 
       </tbody> 
      </table> 

백엔드 유형 스크립트 파일에서이 #stacklist 값에 액세스 할 수 있습니까? typescript 파일에 적용된 모든 파이프가 끝나면 최종 스택리스트가 필요합니다. 어떻게해야할까요?

+0

'@ Pipe'가 적용된 데이터가 필요하다면'component.ts'에 파이프를 적용 할 수도 있습니다 – SrAxi

답변

1

파이프가 component.ts에 적용된 후 데이터에 액세스하려면 구성 요소에서 직접 파이프를 적용 할 수 있습니다.

import { MyCustomPipe } from './my-custom.pipe'; 

export class MyClass { 
    constructor(private customPipe: MyCustomPipe){ 
    this.pipeAppliedData = this.customPipe.transform(someData); // this will be like doing in template "someData | MyCustomPipe" 
    }  
} 

는이 시점에서, 당신은 당신이 적용 파이프 데이터 ( this.pipeAppliedData)과는 다음 템플릿에 this.pipeAppliedData을 사용할 필요가 무엇이든 할 수있다. 이 방법으로 한 번 (구성 요소에서) 파이프를 사용하고 그 결과를 템플릿과 구성 요소 양쪽 모두에서 사용합니다.

+0

같은 목록에 파이프를 두 번 적용하는 것과 같습니다. 파일이야? –

+1

다른 용도로 사용해야하는 경우 구성 요소에 적용한 다음 결과 데이터를 템플릿에 사용할 수 있습니다. 구성 요소 내부에 파이프가 적용된 데이터가 필요하지 않은 경우 다음과 같이 파이프를 사용하십시오. 템플릿에서. 제가 여러분에게 준 것은 구성 요소 내부의 파이프를 사용하기위한 솔루션이며, 이것이 원하는/필요하다고 생각했습니다. : D – SrAxi

+0

@MendonAshwini 제 답변을 업데이트했습니다. ;) 친구가되기를 바랍니다. ;) – SrAxi

관련 문제