Angular keypress事件每次都会触发

时间:2017-03-03 08:02:25

标签: javascript angularjs

我在下面有一个基本的角度应用程序,但奇怪的是,每次用户键入消息时,视图似乎都会重新加载。

我不确定为什么会发生这种情况,因为我是按照资格使用这首曲目。任何帮助表示赞赏



var mainApp = angular.module("ChatApp", []);

mainApp.controller('ChatController', ['$scope', function($scope) {

  $scope.linkify = function(inputText) {

    console.log("INPUT TYPE " + inputText);
  }


}]);

<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.6.1/angular.min.js"></script>


<div id="main-window" class="main-content" style="padding-top:50px;">

  <div ng-app="ChatApp" ng-controller="ChatController">

    <div id="chatmcontainer" class="container-fluid">

      <ul id="chatbox" class="chat">
        <li ng-repeat="n in [41, 42, 43, 44] track by $index">
          <p>
            {{linkify(n)}}
          </p>
        </li>
      </ul>

      <div class="col-md-offset-3 col-md-7 bg-white" style="padding-right:20px;">
        <div class="input-group">

          <input ng-keypress="count = count + 1" ng-init="count=0" ng-model-options="{
                       updateOn: 'blur'
                   }">
        </div>
      </div>
    </div>
  </div>
</div>
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:0)

您可以使用

{{::linkify(n)}}

以便使用单向绑定。 我认为它正在重新绘制列表,因为您使用了一个函数。我将尝试找到更详细的解释,我将编辑此回复。