2017-02-17 37 views
0

我已经为表格创建了一个公共搜索管道,我还将列值添加到了选择框中,现在我需要从选择框中获取所选值并在其中访问我管我如何从Angular2管道获得NgModel值

下面是代码,供大家参考

export class searchPipe implements PipeTransform { 
    transform(values: any[], filter: string, selectedvalue:any): any { 
    console.log(selectedvalue); 
    if (!values || !values.length) return []; 
    if (!filter) return values; 
    filter = filter.toUpperCase(); 
    if (filter && Array.isArray(values)) { 
     const keys = Object.keys(values[0]); 
     return values.filter(v => v && keys.some(k => v[k].toUpperCase().indexOf(filter) >= 0)); 
    } 
    } 
} 

的Html

<select *ngIf="showColFilter" [(ngModel)]="selecedValues"> 
    <option *ngFor="let colValues of tabData | columnPipe">{{colValues}}</option> 
</select> 
+1

您可以通过多种PARAMS分离用分号值 - 'columnPipe:过滤器: selectedValue'。这里是链接到文档: https://angular.io/docs/ts/latest/guide/pipes.html#!#custom-pipes –

+0

我不能给columnPipe:filter:selectedValue像这样在我的模板中指向搜索过滤器 –

+0

可能我错过了一些东西,但是按照预期传递了选定的值:https://plnkr.co/edit/B3Tr1I2saLOxIXGjA8xU?p=preview(请忽略不规则的选择,因为所选项目已从选项)。 你能否更新你的问题并发布一个plunker回购? –

回答

-3

<select [(ngModel)]="colvalues"> <div *ngFor="let colValues of tabData | columnPipe"> <option value="colValues"> </option> </div> </select>

使用此代码ngModel获得价值

+0

你得到了什么问题吗?我需要访问另一个管道内的ngModel值 –

+1

不要给无用的答案。尝试分析问题,然后相应发布 – Aravind