作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个指令可以创建一堆类似的小部件。每个小部件都有不同的指令。这是我用来创建小部件的模板:
template: '<li><div {{widgetModel.directiveName}}></div></li>'
我想要协调变量和/或模板来声明需要使用的指令。模板将是:
template: '<li><div directive-name></div></li>'
然后我希望它充当属性名称为 directiveName
的普通指令。当前的代码没有发生这种情况,我不知道如何让它表现得像我需要的那样。 directiveName 指令实际上可以是任何东西。
最佳答案
您可以在编译函数中进行这些更改:
angular.module('myWidgets', [])
.directive('multiDirective', function() {
return {
restrict: 'E',
compile: function(element, attrs)
{
var htmlText = '<ul>' +
'<li ' + attrs.directiveName + '>' + '</li>' +
'</ul>';
element.replaceWith(htmlText);
}
}
})
然后你可以这样调用它:
<multi-directive directive-name='widget1' />
关于javascript - 如何将指令名称传递给模板 - Angular.js,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19781290/
我是一名优秀的程序员,十分优秀!