Javascript JSON作用域更改在angularjs的视图中没有反映?
实际上,我在控制器中有json作用域Javascript JSON作用域更改在angularjs的视图中没有反映?,javascript,angularjs,json,Javascript,Angularjs,Json,实际上,我在控制器中有json作用域 bosAppModule.controller("module-menu-controller", function($scope, $compile, $http, layoutRenderingDataFactory) { $scope.transactionalData={}; $scope.transactionalData.Data={"entityinfo":{"entity":"","tenantId":"
bosAppModule.controller("module-menu-controller", function($scope, $compile, $http, layoutRenderingDataFactory) {
$scope.transactionalData={};
$scope.transactionalData.Data={"entityinfo":{"entity":"","tenantId":"292FEC76-5F1C-486F-85A5-09D88096F098","timeStamp":"2015-12-15T10:16:06.322Z"},"collections":{}};
});
$scope.transactionalData将根据用户输入填写。我是说它是双向装订的。最后是完整的JSON
{
"entityinfo": {
"entity": "Customer29Jan16",
"tenantid": "292FEC76-5F1C-486F-85A5-09D88096F098",
"timestamp": "2015-12-15T10:16:06.322Z"
},
"collections": {
"customer29jan16": {
"rowset": [
{
"cuid": "6293f82f-d202-45c0-9a7b-46cd955361a3",
"name": "test",
"quantity": "60",
"rate": "60",
"amount": "3600"
}
],
"meta": {
"parentreference": "***",
"pkname": "***",
"fkname": "***"
},
"rowfilter": []
},
"customer29jan16obj": {
"rowset": [
{
"cuobjid": "83bfc652-9f83-47d3-b173-b1a824ff3bed",
"fulladdress": "Electronic City",
"objaddr": "Bangalore",
"objname": "Testing",
"customer29jan16objcuid": "6293f82f-d202-45c0-9a7b-46cd955361a3"
}
],
"meta": {
"parentreference": "***",
"pkname": "***",
"fkname": "***"
},
"rowfilter": []
}
}
}
一旦这个JSON值分散在数据库中。我们必须清理范围。我们正在像这样访问外部范围。
不清楚。但范围正在改变
// get the scope of module and menu controller
var moduleMenuControllerScope = angular.element("[ng-controller=module-menu-controller]").scope();
// clear the crudObject
moduleMenuControllerScope.transactionalData.Data.collections = {};
moduleMenuControllerScope.$digest();
我想在这里补充一点。如果我将更改特定的表单字段,那么它将更改视图
任何人请建议我如何清除范围,并需要考虑到相关问题
提前感谢。您尝试使用
$apply
而不是$digest
。它将解决您的问题。难道没有一个AJAX调用可以将数据保存在DB中吗?您所说的“清除范围”是什么意思?@RahulB-是的,我们正在使用Ajaxcall@ChrisStanley我的意思是说,当我们改变视图需要反映的范围时。你能展示一下你是如何呈现这个json的吗?我试过它显示错误$apply已经在进行中,但是视图没有得到改变。不工作。如果可能,请提供与我的要求相关的任何示例。感谢您像这样应用:(!$scope.$$phase)$scope.$apply()
它将消失并已在进行中错误。