Javascript AngularJS:在他的工作之后执行代码

Javascript AngularJS:在他的工作之后执行代码,javascript,events,angularjs,Javascript,Events,Angularjs,我想在AngularJS完成后执行一些代码,以便在事件发生后更改HTML。我已尝试执行以下操作: angular.module('ngC', [], function($routeProvider, $locationProvider) { $locationProvider.html5Mode(true); }) .directive("carousel", function () { return function (scope, element, attrs) {

我想在AngularJS完成后执行一些代码,以便在事件发生后更改HTML。我已尝试执行以下操作:

angular.module('ngC', [], function($routeProvider, $locationProvider)
{
    $locationProvider.html5Mode(true);
})
.directive("carousel", function () {
    return function (scope, element, attrs) {
        scope.$watch("imgs", function (value)
        {
            //  Here my code
        });
    };
});

问题是,我的代码是在AngularJS replace
{{}}
代码之前执行的,但我希望在代码之后执行。

只要比较一下$watch侦听函数中的newValue和oldValue是否不同,这将指示是否有更改

scope.$watch("imgs", function (newValue, oldValue)
{
    if(newValue !== oldValue) {         
       // Here my code
    }
});
编辑:从文档中选择

在向作用域注册观察程序后,异步调用侦听器fn(通过$evalAsync)来初始化观察程序。在极少数情况下,这是不可取的,因为在watchExpression的结果没有更改时调用侦听器。要在侦听器fn中检测此场景,可以比较newVal和oldVal。如果这两个值相同(==),则由于初始化而调用了侦听器

我的答案是:


难道你不想做一些类似scope.$watch(attrs.imgs,…)的东西吗?事实上,我想运行一个JQuery命令(JQuery-Raty),所以我需要将它作为最终的“HTML”。
// (inside some function with $rootScope available)
$rootScope.$on('$viewContentLoaded', function() {
    // ... (multiview init code here) ...
});