未定义或为AngularJS为null

前端之家收集整理的这篇文章主要介绍了未定义或为AngularJS为null前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
当我写手表处理函数我检查newVal参数未定义和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);
    });
};
您可以随时为您的应用程序添加
angular.isUndefinedOrNull = function(val) {
    return angular.isUndefined(val) || val === null 
}

猜你在找的Angularjs相关文章