テンプレートには次のようなものがあります。
<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このコードを変更しないと、コントローラーの初期化時に実行されます。