Khi tôi viết các chức năng xử lý đồng hồ, tôi kiểm tra tham số newVal trên undefinedvà null. Tại sao AngularJS có một hành vi như vậy, nhưng không có phương thức tiện ích cụ thể? Vì vậy, có angular.isUndefinednhưng không angular.isUndefinedOrNull. Không khó để thực hiện điều đó bằng tay nhưng làm thế nào để mở rộng góc để có chức năng đó trong mỗi bộ điều khiển? Tnx.
Chỉnh sửa :
Ví dụ:
$scope.$watch("model", function(newVal) {
if (angular.isUndefined(newVal) || newVal == null) return;
// do somethings with newVal
}
Nó có được chấp nhận phổ biến để xử lý một cách như vậy không?
Chỉnh sửa 2 :
Ví dụ JSFiddle ( http://jsfiddle.net/ubA9r/ ):
<div ng-app="App">
<div ng-controller="MainCtrl">
<select ng-model="model" ng-options="m for m in models">
<option value="" class="ng-binding">Choose model</option>
</select>
{{model}}
</div>
</div>
var app = angular.module("App", []);
var MainCtrl = function($scope) {
$scope.models = ['Apple', 'Banana'];
$scope.$watch("model", function(newVal) {
console.log(newVal);
});
};