Javascript Angularjs:ng模型不';对象更改后无法刷新
我正在与angularjs合作,我对ng模型更新有一点问题 我有一个$scope对象,它在ng控制器之外的服务中加载了ajax 服务内容如下:Javascript Angularjs:ng模型不';对象更改后无法刷新,javascript,angularjs,angularjs-scope,Javascript,Angularjs,Angularjs Scope,我正在与angularjs合作,我对ng模型更新有一点问题 我有一个$scope对象,它在ng控制器之外的服务中加载了ajax 服务内容如下: app.factory('myService', function($http) { var myService = { async: function(code) { var promise = $http.get(url).then(function (response) {
app.factory('myService', function($http) {
var myService = {
async: function(code) {
var promise = $http.get(url).then(function (response) {
return response.data;
});
return promise;
}
};
return myService;
});
这样就可以了,ng控制器中的$scope对象也被更新了
现在我需要在html页面中更新并显示输入文本中的值,该文本具有更新对象的ng model属性,如下所示:
<input type="text" name="totalInvitations"
ng-model="invitation.totalInvitations" required smart-float/>
我做错了什么
更新ng模型和显示值需要什么
谢谢看起来这里的大部分内容都是正确的,我想您已经调试过了,看到它符合这一行:
$scope.invitation = d;
如果是这样的话,我唯一能看到的错误就是在顶部附近定义的HTML元素没有包装在控制器定义的区域内
<div ng-controller="editInvitationCtrl>
<input type="text" name="totalInvitations"
ng-model="invitation.totalInvitations" required smart-float/>
</div>
关于safeApply,我不确定您使用的是Angular的哪个版本,但我还没有遇到您所指的错误,我使用了1.0.7和1.1.4您使用的是哪个版本?这是一个持久性问题吗?您的代码在以下情况下工作:,我仅用发送虚假响应的$timeout替换$http。感谢所有的回答,这是外部div中声明的ng控制器的问题。现在一切正常。您是对的。我在另一个不包含输入标签的div中声明了控制器,通过您的回答,我意识到了我的错误。现在一切都好了,非常感谢!
<div ng-controller="editInvitationCtrl>
<input type="text" name="totalInvitations"
ng-model="invitation.totalInvitations" required smart-float/>
</div>