当前位置: 首页 > 面试题库 >

ng-model:空字符串应为null

卢永寿
2023-03-14
问题内容

如果我使用ng-model输入字段和清空,角套它'',而不是null即使是null前。

在我的情况下,这是一个问题,因为null如果输入字段为空(而不是空),则需要发送到服务器''

有没有办法告诉角度设置“空”输入模型null


问题答案:

您可能需要$watch输入空值并将其设置为null

<input type="text" ng-model="test.value" />



$scope.$watch('test.value', function (newValue, oldValue) {
  if(newValue === "")
    $scope.test.value = null;
});

另一种方法是使用自定义指令并$parsers在其中应用a :

<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;
            });
        }
    };
});


 类似资料:
  • 问题内容: 这是一个简单的示例: 我看到即使值为空,它始终会生成条件。为什么? 问题答案: 您无需显式使用诸如或的限定词。像JavaScript中一样,空字符串将被评估为false。 您的视图也将更加清晰易读。 更新以消除Angular中的错误

  • 我想从属性转换空字符串值,并在API响应模型对象中用替换它。 我尝试了这个解决方案,但它在类级别上不起作用。

  • 问题内容: 我有以下类,它是由Jackson映射的(简化版): 在某些情况下,服务器会返回,然后我想将name设置为空的Java String。 是否有任何Jackson注释,或者如果属性为,我应该只检查getter中的null并返回空字符串? 问题答案: 您可以在默认构造函数中或声明时进行设置: 要么

  • 我有以下由Jackson映射的类(简化版): 在某些情况下,服务器返回,然后我想将name设置为空Java字符串。 是否有任何Jackson注释,或者如果属性为,我应该只检查getter中的null并返回空字符串吗?

  • 问题内容: 是否可以通过SQL语句确保列的默认值为空字符串而不是? 问题答案: 是-使用DEFAULT约束:

  • 问题内容: 我想动态创建表单。在控制器内部,我创建了一个字符串 并在我的html页面中 我得到的价值,但没有约束力。我也尝试 也行不通。谁能知道这怎么工作? 问题答案: HTML: 添加指令: JS: