2017-06-02 61 views
0

我使用angularjs ui網格,我有我的代碼中稱爲狀態的字段,其中用戶可以通過單擊按鈕將狀態更新爲Active或InActive。Angularjs用戶界面網格沒有檢查ng顯示條件,當行更新

更新後,我可以刷新數據,但celltemplate:條件沒有被解僱。我使用下面的方法來刷新UI電網

$scope.gridOption.data=data; 
$scope.gridOptionApi.core.refresh(); 

但這只是刷新我的數據,它不檢查,我在celltemplete添加的條件是如下

{field: 'profileId', displayName: 'Change Status',cellTemplate:'<div class="text-center"> 
<button ng-click="grid.appScope.changeProfileStatus(COL_FIELD, \'InActive\')" ng-show={{row.entity.status==\'Active\'}} 
class="btn-custome-warn custom-btn-xs btn-warning"><i class="fa fa-close"></i></button><button 
ng-click="grid.appScope.changeProfileStatus(COL_FIELD, \'Active\')" ng-show={{row.entity.status==\'InActive\'}} 
class="btn btn-xs btn--small custom-btn-xs button--primary"><i class="fa fa-check"></i></button></div>'} 

所以基本上我顯示更改狀態字段,如果狀態處於活動狀態,則顯示非活動狀態按鈕,反之亦然。

有任何建議嗎?

這裏是plunker我試圖創建顯示u演示,但狀態在這裏我現在正在更新手動顯示其他我有api調用更新它,如果你看到數據正在改變,但狀態改變按鈕不會改變 Demo

+0

我買了NG-表演和NG-隱藏了同樣的問題,嘗試NG-如果作爲替代,它可能有所幫助。一些問題發生在用戶界面刷新 –

+0

我嘗試與ng - 如果它沒有顯示任何東西,甚至沒有HTML按鈕,所以只有我使用ng-show – Sudarshan

+0

'ng-show'需要像'ng-show = 「{{row.entity.status == \ '活動\'}}」'? – Icycool

回答

0

了plunker通過改變內部 ng-show={{row.entity.status==\'Active\'}}

ng-show="row.entity.status==\'Active\'"

原因是什麼工作10在模板中被立即執行,所以你可以看到生成的HTML有ng-show="true"但沒有表達類似

ng-show="row.entity.status=='Active'"