テンプレートには次のようなものがあります。
<input name="searchText" placeholder="Search" data-type="search"
ng-model="searchText"
ng-change="searchRecords()"
ng-keyup="onKeyUp()">
そのテンプレートに到達すると、searchRecords()
関数が呼び出されます (ng-change が起動されます)。searchRecords()
入力を開始したときにのみ呼び出されたい(変更searchText
が発生しng-change
ます)。現在、コントローラーの初期化で起動されます。
コントローラーで、に設定しようとしsearchText
ましたが同じでした。null
''
この動作は設計によるものですか、それとも何か不足していますか?
編集:
私は、このコードが私のを起動することに気付きましたsearchRecords()
:
$scope.$watchGroup(['daysBefore', 'daysAhead'], function (newValues, oldValues, scope) { ... }
編集:
を削除してng-change
これを追加しました:
$scope.$watch('searchText', function (newValue, oldValue) {
$scope.searchRecords();
});
$scope.searchText
このコードを変更しないと、コントローラーの初期化時に実行されます。