请使用firefox,chrome等最新浏览器浏览本站。

update $scope outside controller

js+jquery 阿豹 447次浏览 0个评论 扫描二维码

是用angularjs,有时候我们需要在controller外部更新$scope,这时候我们需要使用augular内置的apply()方法。
js代码:

    function changeImgList() {
    
	var appElement = document
			.querySelector('[ng-controller=imgController]');
	var scope = angular.element(appElement).scope();
	scope.$apply(function() {
		scope.getList(1, 10, 'jpg');
	});
    }

也可以更具ng-app获得scope对象,不过需要改变的属性要属于$rootScope

    var imgMosule = angular.module('imgApp', []);
    imgMosule.controller('imgController', function($rootScope, $scope, $http) {
        $rootScope.currentPage = 10;
    }
    function changeImgList() {
    
	var appElement = document
			.querySelector('[ng-app=imgApp]');
	var scope = angular.element(appElement).rootScope();
	scope.$apply(function() {
		scope.getList(1, 10, 'jpg');
	});
    }

喜欢 (0)or分享 (0)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到