我需要,所以我創建使用模板與需要一個指令的格式輸入值:「ngModel」,因爲我必須使用ngModelController功能($解析器 ,$ formatters等)。值不更新角輸入視圖
這是我的HTML:
<div ng-model="myInputValue" amount-input-currency=""></div>
{{myInputValue}}
這是我的指令:
.directive('amountInputCurrency', [function(){
return {
templateUrl: '../amountInputCurrency.tmpl.html',
require: 'ngModel',
restrict: 'A',
link: function(scope, elem, attrs, model) {
// ...
}
}
}
這是我的模板:
<input type="text" ng-model="myInputValue">
的問題是,我不能更新格式化插入的值後的視圖。例如,如果我寫「」我想通過這種方式改變參數值:
model.$formatters.push(function(value) {
return value + '00';
}
替代我嘗試設置在此的其他方式的事件:
<input type="text" ng-model="myInputValue" ng-blur="onBlur()">
scope.onBlur = function() {
model.$viewValue = model.$viewValue + '00';
// or model.$setViewValue(model.$viewValue + '00';);
model.$render();
};
的模型$ viewValue變化,myInputValue(在HTML與{{myInputValue}})的變化,但不的值顯示在輸入框中 ...這是問題?謝謝!
---------------- UPDATE ----------------
也許這個問題是因爲我有2 ng模型(一個在HTML中,一個在模板中):https://github.com/angular/angular.js/issues/9296
我該怎麼辦?這兩種型號都是指相同的型號...
嗨,謝謝你的回覆。我嘗試使用$ formatters,但函數返回的新值沒有在視圖中更新(model。$ viewValue具有舊值),我該如何做一個模型$ render();在格式化程序返回後?再次感謝 – Hazlo8
嗨,謝謝,現在我有一個viewValue的問題,我用一個plunker創建一個新的問題:http://stackoverflow.com/questions/42537459/angular-model-viewvalue-not-showing-in-input-領域 – Hazlo8