我使用Angular 1.6.2作为学习框架的个人项目,我无法找到解决此问题的方法:
我有一个经常更新的变量(比如每秒一次或更少),我在视图中有两个输入文本字段。我希望变量只在聚焦时更新输入(和另一个变量)。
为了更好的用户体验,我现在稍微更新了视图,所以现在每个文本输入都有一个单选按钮(因为有时用户可能希望更新该值,但他需要点击在外地)。
控制器内部:
$interval(function () {
// This gets the updated value from an external source/code.
$scope.updatingValue = updatingValueFunc();
}, 1000);
$scope.fields = [
{ first: 12323, second: 1430,}
];
HTML:
<div class="field-wrap">
<input type="radio" name="current-bind" value="answer.end">
<input type="number" ng-model="answer.second">
</div>
<div class="field-wrap">
<input type="radio" name="current-bind" value="answer.start">
<input type="number" ng-model="fields.first">
</div>
答案 0 :(得分:1)
Angular有一个ng-focus钩子,可用于调用更新功能。
<input type="radio" name="current-bind" value="answer.end" ng-focus="updateValue()"/>
在你的js中你可以创建一个匹配它的函数
$scope.updateValue = function(){
$scope.updatingValue = updatingValueFunc();
}
如果您希望该功能在点击而不是焦点上运行,您也可以使用ng-click。