2013-08-26 68 views
0

我創建了一個依賴於過濾器的單元格模板,但未對過濾器進行處理。具有納格網格過濾器的單元格模板

的小區被定義爲{field:'status', displayName:'Status', cellTemplate: 'cell/statusCellTemplate.html'}]其中模板是

<button class="btn btn-primary" ng-click="changeStatus(row.getProperty('id'),'{{row.getProperty(col.field) || switchStatus}}')">{{row.getProperty(col.field)}}</button> 

EDIT

myapp.filter('switchStatus', function() { 
    return function(input) { 
     return (input == 'STOPPED') ? 'STARTED' : 'STOPPED'; 
    }; 
}); 

渲染的細胞是<button class="btn btn-primary ng-scope ng-binding" ng-click="changeStatus(row.getProperty('id'),'STOPPED')">STOPPED</button>。我期待第二個參數STARTED。

Plunker:點擊時停止,當前狀態應啓動

回答

0

來自哪裏data?我覺得你的意思,以檢查是否input是「停止」或「已啓動」是這樣的:

app.filter('switchStatus', function() { 
return function(input) { 
    var out = ""; 
    if (input == 'STOPPED') { 
     out = 'STARTED'; 
    } else if (input == 'STARTED') { 
     out = 'STOPPED'; 
    } 
    console.log(input + " " + out); 
    return out; 
}; 

你可以讓你的過濾器通過寫短:

app.filter('switchStatus', function() { 
return function(input) { 
    return (input == 'STOPPED') ? 'STARTED' : 'STOPPED'; 
}; 
+0

良好的漁獲,但不幸的是它確實解決問題。 – Sydney

+0

Plunker現在在我的瀏覽器中不適合我,所以我只是一眼就認爲這可能是問題,但我無法確認... – Kabb5

+0

Plunker現在正在關閉 – Sydney