指令元素之后的元素我有一个指令在其中工作的罚款angularjs但它使用jQuery的,现在我想TOT它转换成角4如何创建角4
旧指令(AngularJS)
app.directive('errName', function() {
return {
link: function (scope, element, attrs) {
element.bind('error', function() {
if (attrs.src != attrs.errName) {
var name = attrs.errName.split(' ');
var attr = '?';
if (name.length == 1)
{
attr = name[0].substring(1, 0);
}
if (name.length > 1)
{
attr = name[0].substring(1, 0) + name[1].substring(1, 0);
}
$(element).hide();
$(element).after('<span class="thumb-alpha"><span class="default-thumb"><span class="default-thumb-placeholder">' + attr.toUpperCase() + '</span></span></span>');
}
});
}
}
});
它只是检查负载形象有一个错误,那么它隐藏元素,创造一个跨度之后,我改变其在角4名,以显示缩写我得到的值隐藏元素,以及,但能不能这
新指令后创建跨度,我尝试建立:
export class ShowInitialsDirective {
@Input() initials;
constructor(el: ElementRef, renderer:Renderer) {
var element = el.nativeElement
renderer.listen(el.nativeElement, 'error', (event) => {
var initial_default = '?';
var name = this.initials;
name = name.split(' ');
if (name.length == 1)
{
initial_default = name[0].substring(1, 0);
}
if (name.length > 1)
{
initial_default = name[0].substring(1, 0) + name[1].substring(1, 0);
}
this.initials = initial_default;
renderer.setElementStyle(el.nativeElement,'display','none');
// element.after('<span class="thumb-alpha"><span class="default-thumb"><span class="default-thumb-placeholder">' + this.initials.toUpperCase() + '</span></span></span>');
})
}
}
有没有办法在它创建范围,并把这个HTML代码在它
好,我在哪个范本的img标签我想利用这个指令一个组件是有可能,我可以使用新的部件和其他组件的img标签? –
非常感谢这个作品像魅力除了el.nativeElement.parent;我将其更改为el.nativeElement.parentElement和它的作品,并感谢:) –
@MohitBumb你是正确的:)写的未经测试。而且它很难有一个img标签是内部的组件,所以你应该像' IMG-缩写>一个新的组件'或类似的东西:) –
PierreDuc