所以我有一个名为个人信息的页面,其中包含 ng-models 。
e.g。
<input type = "text" name = "foo_name" ng-model = "foo.name" />
<input type = "text" name = "foo_address" ng-model = "foo.address" />
<input type = "text" name = "foo_age" ng-model = "foo.age" />
然后,有一个继续按钮,该按钮会重定向到名为其他详细信息的新页面。
如果填写了继续按钮,则验证所有必填字段。如果所有字段都经过验证,它还会返回日志 - 或者:
SUCCESS
{result:
{ error: null }
}
FAIL
{result:
{ error:
{
blah blah blah
}
}
}
在“其他详细信息”页面中,它只是上一页输入的详细信息的GRID。然后,如果他们想要编辑他们的个人信息,可以在此页面中显示“编辑”按钮。
所以我使用ng-model检索存储在 saveDetailsInfo 服务中的数据。
$scope.retrieveData = function(dataFromService) {
$scope.foo = {
name: dataFromService.entry.name,
address: dataFromService.entry.address,
}
}
然后,它在各自的领域上展示得非常好。现在的问题是,如果我想再次点击“继续”按钮来保存我的更改。它返回的错误是这些字段已经未定义,尽管这些值已在输入字段中打印并填充。
说实话,我不知道为什么它变为空,因为我认为我在处理数据检索方面做得恰到好处。
先谢谢您的帮助!
答案 0 :(得分:0)
我无法重新创建问题...但是快速解决方法是检查continue函数的值是否为null,如果它为null,则再次读取ng-model中的值(如它在dom树中显示的那样)然后使用这些数据来初始化并继续你需要对数据做什么。
很多时候会发生这种情况,因为函数在dom获取数据之前被初始化,因此为null ...