使用ui.router呈现的页面的Angular JS事件

dom*_*kun 5 javascript angularjs angular-ui-router

背景场景:

我有一个ng-repeat填充我的视图,动态扩大<div>容器.

我需要<div>在渲染完成时调整我的高度,我还需要在我的应用程序的每个其他页面上执行此操作.

我很清楚这个ready()功能:

    angular.element(document).ready(function() {
        console.log('ready')
    })
Run Code Online (Sandbox Code Playgroud)

但是这个代码app.js只能在第一页打开(或重新加载)时执行.


重要说明:
我正在ui.router浏览我的"页面",因此每当我需要更改页面时,我都会调用`$ state.transitionTo()'.


问题:是否有一个Angular事件在页面完全呈现时会被广播?

dom*_*kun 14

在寻找解决方案时,我发现每当DOM完全呈现时(每次新的状态转换时)都会调用ui.router事件.

事件是$viewContentLoaded,语法非常直接:

    $rootScope.$on('$viewContentLoaded', function (event) {
            console.log('lock & loaded')
    })
Run Code Online (Sandbox Code Playgroud)


我认为这可能对其他人有用,
干杯