2017-08-08 67 views
0
md-button.md-warn(ng-click="$ctrl.remove(); reload()" ng-hide="$ctrl.isNew") Delete 

刪除按鈕從列表中刪除文件,但它不刪除文件的預覽。如果頁面刷新,預覽消失,這是我想要的。所以我想要刪除按鈕來刷新頁面。ng-click綁定到兩個函數,第二個不起作用

ng-click被設置爲兩個函數,如上所示。

但是當單擊'刪除'時,remove()發生,但頁面不會重新加載。爲什麼reload()沒有得到執行?我試着下面還有:

md-button.md-warn(ng-click="$ctrl.remove(); $ctrl.reload()" ng-hide="$ctrl.isNew") Delete 
+0

Shoudn't它是$ ctrl.reload()? – Vivz

+0

你必須使用** $ ctrl.reload(); ** –

回答

1

如果你想刷新瀏覽器窗口,你想被調用window.location.reload(),不只是裸reload()(這將嘗試運行一個名爲函數「重載」上指令範圍)或$ctrl.reload()(它將嘗試在控制器範圍上運行名爲「reload」的函數,這不是你想要做的。)(其他答案似乎錯過了你說你的那部分'試圖刷新瀏覽器窗口。)

但是你使用的是Angular,所以你絕對是不想重新加載整個瀏覽器窗口預覽消失。這是一個強力的解決方案,完全違背了許多使用SPA框架的理由。

取而代之的只是重置任何狀態變量使預覽顯示在第一位。

+0

謝謝。這就說得通了。 –

-1
md-button.md-warn(ng-click="$ctrl.remove() || $ctrl.reload()" ng-hide="$ctrl.isNew") Delete 

需要產業鏈功能,像這樣的angularjs

+1

這是不正確的。請參閱https://stackoverflow.com/questions/16813945/how-to-add-many-functions-in-one-ng-click,例如 –

+0

哦,就像我一直這樣做的方式。兩者都很好。 – bryan60

+0

這也不正確。如果第一個函數返回任何真值,那麼將函數與'||'結合起來不會運行第二個函數:https://jsfiddle.net/g0h4jLyf/ –

相關問題