如果我使用ng-model输入字段和清空,角套它'',而不是null即使是null前。
ng-model
''
null
在我的情况下,这是一个问题,因为null如果输入字段为空(而不是空),则需要发送到服务器''。
有没有办法告诉角度设置“空”输入模型null?
您可能需要$watch输入空值并将其设置为null:
$watch
<input type="text" ng-model="test.value" /> $scope.$watch('test.value', function (newValue, oldValue) { if(newValue === "") $scope.test.value = null; });
另一种方法是使用自定义指令并$parsers在其中应用a :
$parsers
<input type="text" ng-model="test.value" empty-to-null /> myApp.directive('emptyToNull', function () { return { restrict: 'A', require: 'ngModel', link: function (scope, elem, attrs, ctrl) { ctrl.$parsers.push(function(viewValue) { if(viewValue === "") { return null; } return viewValue; }); } }; });