時計処理関数を作成するときは、newValパラメータをオンundefined
とでチェックしますnull
。AngularJSにそのような動作があるのに、特定のユーティリティメソッドがないのはなぜですか?ですangular.isUndefined
が、ありませんangular.isUndefinedOrNull
。手作業でそれを実装するのは難しいことではありませんが、各コントローラーでその機能を持つために角度をどのように拡張しますか?Tnx。
編集:
例:
$scope.$watch("model", function(newVal) {
if (angular.isUndefined(newVal) || newVal == null) return;
// do somethings with newVal
}
そのような方法で処理することは一般的に受け入れられている慣行ですか?
編集2:
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);
});
};