我通过使用以下代码定义了$ rootScope变量:
$rootScope.userDetails = function () {
$http.post($account + '/feedbackdiv')
.success(function (res) {
$rootScope.userData = res.userData;
});
};
$rootScope.userDetails();
现在,可以从任何地方访问userData。现在,我尝试将userData.FirstName值分配给像这样的文本字段:
<input type="text" class="form-control museo_sans300" id="fName"
placeholder="First Name" name="fName" minlength="1" ng-model="fName"
ng-init="fName = userData.FirstName" required="required">
但这不是文本字段中的初始值。我还检查了当我给ng-init静态值时它是否可以正常工作,例如,ng-init ="fName = 'test'"
此外,我还验证了我得到的值userData.FirstName
。请提供一种初始化此输入文本字段的解决方案。
在初始分配之间fName
和userData.FirstName
之后都没有参考fName = userData.FirstName
。也ngInit
不会在每个摘要循环上再次运行。因此,当稍后userData.FirstName
填充时,原语fName
将不会被更新。这是预期的Javacript行为,与Angular不相关。
因此,您可以userData.FirstName
直接将其用作模型:
<input type="text" class="form-control museo_sans300"
id="fName" placeholder="First Name" name="fName" minlength="1"
ng-model="userData.FirstName"
required="required">
否则fName
,一旦userData
加载,您将需要在控制器中手动设置。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句