我模块的控制器有一个属性作为字符串,我在其中汇编HTML。
在一个指令中,我尝试将HTML字符串分配给工具提示的属性,即 “工具提示-HTML的不安全”。
我能够将整个元素分配给此tooltip-attribute。我怎样才能获得父范围的属性?
请参阅我的plunkr获取的代码: http://plnkr.co/edit/rTq8zrKdc3qABrc9Tde6?p=catalogue
答案 0 :(得分:1)
两件事:
scope.contentHTML
在链接功能中访问该值。如果您希望能够从指令设置父作用域的contentHTML属性,则可以在指令中使用scope属性并将值设置为“=”。然后,您可以在链接功能中从scope
访问它。例如:
app.directive("tooltipView", function($compile) {
return {
restrict: "AE",
scope: {
tooltipView: "="
},
link: function(scope, element, attrs) {
console.log(scope.tooltipView);
}
};
});
如果您打算在指令(上面的数字2)中使用范围的"="
符号值,您还需要告诉您的指令在HTML中映射到哪个范围值。所以:
<p tooltip-view="contentHTML">Hello {{name}}!</p>
会将链接函数中的scope.tooltipView映射到控制器中的$ scope.contentHTML。
请参阅基于你的plunkr:http://plnkr.co/edit/HskBFNRW8mC8QmVWr3hP
答案 1 :(得分:0)
要从当前的范围访问父范围,您可以执行以下操作:
scope.$parent.someValue