加载angularjs路由后运行javascript代码

加载angularjs路由后运行javascript代码,javascript,jquery,ajax,angularjs,asynchronous,Javascript,Jquery,Ajax,Angularjs,Asynchronous,angularjs加载路线后,我需要显示警报。显示警报的代码段位于angularjs异步加载的视图中: <script> alert('test'); </script> 警报(“测试”); 加载视图后,我希望它能够运行,但它不会。我知道我可以广播并告诉它以后运行等,但我需要一个更通用的解决方案。假设您正在讨论基于角度SPA内部的ngRoute路线更改 将$route注入控制器: .controller('MyCtrl', function($scope, $rou

angularjs加载路线后,我需要显示警报。显示警报的代码段位于angularjs异步加载的视图中:

<script>
alert('test');
</script>

警报(“测试”);

加载视图后,我希望它能够运行,但它不会。我知道我可以广播并告诉它以后运行等,但我需要一个更通用的解决方案。

假设您正在讨论基于角度SPA内部的
ngRoute
路线更改

将$route注入控制器:

.controller('MyCtrl', function($scope, $route){});
在控制器中,您可以订阅路由更改事件:

$scope.$on('$routeChangeSuccess', function() {
    alert('test'); // <-- alert from the question
});
$scope.$on('$routeChangeSuccess',function(){

警报('test');//还有一个选项可以运行javascript函数use
ngInit

<div ng-init="initialize()"></div>

我在这里看到了同样的问题,我如何在特定路线上做到这一点?@Ahmednasar这是可能的,但应该创建一个单独的问题,以便其他有此问题的人能够找到它并发现它有用。您可以在这里发布一个指向您的问题的链接,然后我会查看它。
app.controller('myController', function($scope){
    $scope.initialize = function () {
        alert("Page loading just completed");
    }
});