我正在嘗試創建一個將時間轉換爲秒的過濾器,例如:01:30:10
至5410
,反之亦然,所以最終我的模型中只有秒,用戶得到看到更好的表示。更正angularJS中的用戶輸入
到目前爲止,我成功地創建使用指令工作的例子,不過現在我想嘗試糾正輸入錯誤,特別是這種類型的錯誤: 用戶類型1:62:30
應更正爲2:02:30
,用秒相同。
問題是,它似乎不會更新視圖,但該模型確實會更新。
這是代碼的簡化版本:
app.directive('timeFormatter', ['$filter', function($filter) {
return {
restrict: "A",
require: 'ngModel',
link: function(scope, element, attrs, ngModelController) {
ngModelController.$parsers.push(function(formattedTime) {
// here i return a Number usgin math and RegEx
});
ngModelController.$formatters.push(function(fullSeconds) {
// here i return a String formatted like this:
// return `${hours}:${minutes}:${seconds}`;
});
}
};
}]);
這裏的HTML:
<input class="small" type="text" time-formatter ng-model="answer.end">
而且這裏有一個工作小提琴: https://jsfiddle.net/shock/2ju3hfqu/2/
表明你的觀點。 –
當我說我認爲我的意思是「HTML」,我更新了它 –