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 undefined
và 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.isUndefined
như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);
});
};