Wenn ich Uhrhandhabungsfunktionen schreibe, überprüfe ich newVal param on undefinedund null. Warum hat AngularJS ein solches Verhalten, aber keine spezielle Dienstprogrammmethode? Also gibt es angular.isUndefineddoch nicht angular.isUndefinedOrNull. Es ist nicht schwer, dies von Hand zu implementieren, aber wie weit ist der Winkel, um diese Funktion in jedem Controller zu haben? Tnx.
Bearbeiten :
Das Beispiel:
$scope.$watch("model", function(newVal) {
if (angular.isUndefined(newVal) || newVal == null) return;
// do somethings with newVal
}
Ist es allgemein anerkannt, so umzugehen?
Bearbeiten 2 :
Das JSFiddle-Beispiel ( 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);
});
};