0
我創建了一個簡單的過濾器,以基於當前語言環境設置數字的格式。AngularJS:將過濾器應用於模板
angular.module('myApp').filter('doubleFilter', DoubleFilter);
function DoubleFilter($translate) {
return function(val, decimalPlaces) {
if (val && (typeof val === 'number')) {
val = val.toFixed(decimalPlaces);
if ($translate.use() === 'de_DE') {
val = val.replace('.', ',');
}
}
return val;
}
};
我把這個過濾器在我的模板像這樣工作得很好:當我使用$ translate.use(「EN_US」)的數字格式更改語言
{{dog.weight | doubleFilter : 2}}
然而我的模板沒有更新。很明顯,我錯過了這裏的一些東西。
如何在語言更改時更新視圖?
嗨Tusahr,感謝您的答覆。我現在可以聽到這個事件,但是您能否詳細說明一下「如何執行過濾器」? – Paul
@Paul,添加範圍$ digest()再次執行您的過濾器 – Tushar