角度,在ng-show之后做的事情

时间:2014-06-23 09:47:55

标签: javascript angularjs angularjs-scope

我从我的角度控制器(使用ajax)填充我的页面并使用ng-show在某些步骤中显示内容。 问题是我需要在ng-show显示元素后调整背景的高度。我该怎么做?

控制器中的功能看起来像这样

$scope.showProducts = function () {

    $http({ method: 'GET', url: 'myUrl' }).
        success(function(data) {

           $scope.productVisible = true;

           $scope.products= data;

          //here i would like to recalculate the height of the document but it hasn't shown the products yet
    });

};

像这样的HTML:

            <li ng-repeat="product in products" ng-show="productVisible">
                {{product.ProductName}}
            </li>

2 个答案:

答案 0 :(得分:0)

使用watch订阅更改,因为它会被反映出来:

    $scope.$watch('productVisible', function (newVal, oldVal) {

    if(newVal){
        //Change height here
    }

    }, true);

答案 1 :(得分:0)

ng-show以优先级0执行,因此您可以创建具有负优先级的自定义指令并将其放在同一元素上 - 这样它将作为最后一个执行。