2013-04-23 79 views
2

我根據用戶定義的列定義爲在此建立一個表:在Angularjs應用動態過濾模板

http://jsfiddle.net/waylon999/2RvmW/1/

你會發現我已經在列的過濾器領域,我一直沒能申請。我已經試過:

{{ getItem(data, col.keyword) | col.filter }} 

這鉻提供了以下錯誤: 未知提供商:col.filterFilterProvider < - col.filterFilter

我也嘗試修改的getItem方法打造出來的過濾器字符串,但它只是將作爲文本的

| uppercase 

作爲文本附加到文本。所以,我得到這樣的輸出:

美孚|大寫

有沒有辦法,我可以把這個過濾器,我是如何建立表的方法嗎?

+0

檢查這個答案了:http://stackoverflow.com/questions/14296241/dynamically-change-the-filter-expression – SkyOut 2014-01-17 16:21:19

回答

-2

這將工作

<tr ng-repeat='data in myData'> 
    <td ng-repeat='col in columns'> {{data[col.keyword] | uppercase}}</td> 
</tr> 

有一個很好的發展一天!

jsfiddle

+0

我覺得OP的問題基本上是如何動態確定使用哪種過濾器在模板中而不是硬編碼它。在上述(http://stackoverflow.com/questions/14296241/dynamically-change-the-filter-expression)評論的鏈接的問題回答了它。過濾器表達式也可以是變量:「items in items | filter:filterExpr」 – ccnokes 2015-01-06 17:28:22