我试图在指令中创建一个包含动态内容的templateUrl,例如:
//index.html
...
<directive variable="Hi" />
...
//template.html
<div>{{ variable }}</div>
使用指令:
app.directive("directive",[
function(){
return {
restrict: "E",
replace: true,
templateUrl: "template.html"
}
}
]);
在此示例中,我想要做的是将{{ variable }}
替换为"Hi"
,但我不知道该怎么做。实现这一目标的最佳方法是什么?
答案 0 :(得分:2)
试试这个:
return {
restrict: "E",
scope:{
variable: '@', //Note the '@'
}
replace: true,
templateUrl: "template.html"
}
答案 1 :(得分:1)
return {
restrict: "E",
scope:{
variable: '=',
}
replace: true,
templateUrl: "template.html"
}
答案 2 :(得分:0)
或者如果你不想要一个孤立的范围,你可以这样做:
return {
restrict: "E",
link: function(scope, elem ,attr) {
scope.variable = attr.variable;
},
replace: true,
templateUrl: "template.html"
}