我有一个父控制器,在其中设置实例化一个称为链接的对象。我为属性分配了要在另一个函数中更改的值。但是,当我在instagramModel中设置变量时,links.imagesa不会更新。
我在控制台中打印出该值,并且父范围未得到更新。我以为我遵循了原型继承的规则。
为什么$ scope.links.imagesa没有更新?
.controller('HomeCtrl', function HomeController($scope, titleService, config, $sails, $timeout, $upload, leafletData, $modal, $log) {
$scope.links = {};
$scope.links.imagesa = "This should change";
$scope.instagramModal = function (size) {
var modalInstance = $modal.open({
templateUrl: 'instagramModal.html',
controller: 'InstagramModalInstanceCtrl',
size: size,
resolve: {
items: function () {
return $sails.get("/instagram/self").success(function (response) {
return response.data;
}).error(function (response) {
console.log('error');
});
}
}
});
modalInstance.result.then(function (selectedItem) {
$scope.links.imagesa = "wept";
}, function () {
$log.info('Modal dismissed at: ' + new Date());
});
};
$scope.ask = function () {
console.log($scope.links.imagesa);
};
});
最佳答案
如果要更新父级作用域,则必须使用$ scope。$ parent.links.imagesa,因为在子级作用域中所做的更改不会直接反映在父级作用域中。
关于javascript - Angular 父范围变量不变,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30679748/