Javascript DOM更改时的$compile

Javascript DOM更改时的$compile,javascript,angularjs,twitter-bootstrap,angularjs-directive,Javascript,Angularjs,Twitter Bootstrap,Angularjs Directive,我有一个角度指令来建立一个表 此表的每一列都有一个“格式化程序”,用于逐行呈现列的HTML数据 格式化程序必须返回一个HTML,在我的例子中,返回的HTML包含一个ngClick 但是这个ngClick不起作用,因为angular没有编译它 我如何监视/监视表DOM的更改,以便在更改后强制处理/编译它的指令 我尝试过这个,但没有成功: app.directive('myBootstrapTable', ['$compile', function($compile) { return {

我有一个角度指令来建立一个表

此表的每一列都有一个“格式化程序”,用于逐行呈现列的HTML数据

格式化程序必须返回一个HTML,在我的例子中,返回的HTML包含一个ngClick

但是这个ngClick不起作用,因为angular没有编译它

我如何监视/监视表DOM的更改,以便在更改后强制处理/编译它的指令

我尝试过这个,但没有成功:

app.directive('myBootstrapTable', ['$compile', function($compile) {
    return {
        restrict: 'A',

        link: function(scope, el, attrs) {
            // watching for table DOM changes, to force angular to process it directives
            scope.$watch(function() { 
                return el.html(); 
            }, function(current, old) {
                $compile(el.contents())(scope); 
                console.log('bootstraptable: compile');
            });
        }

    };
}]);
另一个可能的问题是,我不能编译一个元素超过1次。例如,如果我这样做,ng单击将执行两次