作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有可以编译的 Angular 指令
<greeting />
至<print-greeting />
和
<print-greeting />
至Hello World!
我怎样才能把greeting
在我的 HTML 中标记并将其编译为 print-greeting
然后最后显示Hello World!
?目前它在变成 print-greeting
后停止。 .
这是我的代码:Plunker .
<小时/>从上述骗子复制的指令:
greeting
指令
// Transforms <greeting /> into <print-greeting />
app.directive("greeting", function ($compile) {
return {
restrict: 'E',
priority: 2,
compile: function ($templateElement, $templateAttributes) {
var template = '<print-greeting />';
$templateElement.replaceWith(template);
return function LinkingFunction($scope, $element, $attrs) { };
}
};
});
print-greeting
指令
// Transforms <print-greeting /> into "Hello World!"
app.directive("printGreeting", function ($compile) {
return {
restrict: 'E',
priority: 1,
compile: function ($templateElement, $templateAttributes) {
var template = 'Hello World!';
$templateElement.replaceWith(template);
return function LinkingFunction($scope, $element, $attrs) { };
}
};
});
最佳答案
您正在对已编译的模板进行更改。为了使辅助指令被编译,您需要重新编译:
return function LinkingFunction($scope, $element, $attrs) {
$compile($element);
};
关于javascript - AngularJS : How can I compile a directive as another directive?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23959130/
我是一名优秀的程序员,十分优秀!