android如何在字符串改变 — — 退格键补充道,在角上观看?

发布时间: 2017/3/11 23:22:44
注意事项: 本文中文内容可能为机器翻译,如要查看英文原文请点击上面连接.

我正赶上用户按退格键 (aka keytype 32) 的解决方法 Android 。它工作在 chrome 中但不是在设备上。

我的尝试之一是使用简单 watch

然而 $watch 不抓按下退格键。

这里是什么到目前为止︰

<div class='form-group'>
   <label>Field 1</label>
  <input type='text' ng-model='f1' required class="form-control">
 </div>

<div ng-repeat="line in lines">
   {{line}}
</div>

和︰

  $scope.lines = [];

  $scope.$watch(function () {
    return $scope.f1;
},
function (newValue, oldValue) {
    $scope.lines.push(newValue);
}, true);

这是一个演示中Plunker

[编辑]

我试过 ng-change -获得相同的结果。当我按下退格键什么也没有发生

演示与吴变化Plunker

请帮助,

解决方法 1:

它有助于检查您的控制台的错误。基本上这个问题是不是用退格键,但与 ng-repeat 想要重复的条目。所以当你打退格键,数组想要的确切的相同项目推。

相反,使用对象与所需的文本︰

$scope.lines.push({ text: newValue });

此外,使用 ng-change 而不是 $watch 。正是在这个精确的用例。

这里是一个致力笨拙︰ http://plnkr.co/edit/pMyvHXDEaCSmvyM8N5GH?p=preview


它看起来像 fessy 实际上想要保留默认情况下,在角修剪的尾随空格。在这种情况下,看看 ng-trim : https://docs.angularjs.org/api/ng/input/input%5Btext%5D

基本上设置 ng-trim="false" 里面输入的声明将禁用自动修整。

赞助商