有没有办法在不添加额外元素的情况下将某些内容转入指令。
例如
指示:
{
scope: {
someParam: "="
},
link: function(scope, element, attrs){
//do something
},
transclude: true,
template:'<div ng-transclude></div>'
}
源代码:
<div my-directive some-param="somethingFromController">
my transcluded content: {{somethingElseFromController}}
</div>
在这个例子中,一个额外的 div 被添加到标记中。通常这会很好,但我试图在表格中使用这个指令,所以添加一个 div 标签搞砸了。
我也尝试不指定transclude
或template
删除额外的 div 标签,但现在{{somethingElseFromController}}
找不到,因为“transcluded”内容在一个孤立的范围内。我知道我可以从链接函数中的 attrs 对象中获取我的指令的参数,而不是创建一个隔离的范围,但我宁愿避免需要使用 scope.$apply() 评估字符串。
有谁知道如何做到这一点?谢谢!