ng-model undefined with empty strings?

时间:2013-05-31 13:57:18

标签: javascript angularjs

我将用户输入传递给控制器​​函数,但空字符串不声明对象属性。

<form>
  <input type="text" ng-model="data.location" />
  <input type="text" ng-model="data.radius" />
  <button  type="button" ng-click="getSearch(data)">Search</button>
</form>

$scope.getSearch = function(data) {
  console.log(data);
  //undefined
  //...but what if I want {location:'', radius:''}
};

有没有办法在动态传递空字符串时强制创建对象属性?

2 个答案:

答案 0 :(得分:4)

您应该能够将控制器中的data.location和data.radius初始化为'',至少这种方式不是未定义的。

答案 1 :(得分:3)

您应该以{{1​​}}而非$scope.data访问它。

此外,您无需将其作为参数传递给datagetSearch()绑定models,应通过$scope

访问