我做一个指令,修改它的内部html。到目前为止的代码:
.directive('autotranslate',function($interpolate) { return function(scope,element,attr) { var html = element.html(); debugger; html = html.replace(/\[\[(\w+)\]\]/g,function(_,text) { return '<span translate="' + text + '"></span>'; }); element.html(html); } })
它的工作原理,除了内部html不是由角度。我想触发元素的子树的重估。有办法吗?
谢谢 :)
你必须$编译你的内部html喜欢
.directive('autotranslate',function($interpolate,$compile) { return function(scope,text) { return '<span translate="' + text + '"></span>'; }); element.html(html); $compile(element.contents())(scope); //<---- recompilation } })