ng-init无效。任何人都可以帮助我,我在这里失踪了......!感谢
<input type="text" class="form-input form-control" id="defaultInputText" ng-model="details.emailAddr"
ng-init="details.emailAddr = accSummary.response.custName" placeholder="yourname@email.com">
答案 0 :(得分:2)
@ valverde93你的意思是ng-init不适用于动态数据吗? - chandru 2分钟前
不,就像Cirdec说的那样,你必须在请求完成后在你的控制器中设置它。现在,当ng-init运行时,accSummary.response.custName
不存在。一旦AJAX响应恢复,它就不会尝试重新运行-init,因为Angular不知道它是一个AJAX响应或任何东西。
你的控制器最终应该是这样的:
$http.get('/my-url', function(accSummary){
details.emailAddr = accSummary.response.custName
});
我不完全确定accSummary
是什么或服务器响应的是什么。
答案 1 :(得分:0)
如果您需要初始化范围,例如设置details.emailAddr
,请创建一个执行此操作的控制器。
来自angular docs:
唯一合适的
ngInit
用于别名特殊属性ngRepeat
的{{1}},如下面的演示所示。除了这种情况,你应该 使用controllers而不是ngInit
来初始化范围上的值。