我创建了具有@Input()
绑定属性 src 的 img-pop 组件。我创建了具有@HostBinding()
属性 src 的 authSrc 指令。
@Component({
selector: 'img-pop',
template: `<img [src]="src"/>
<div *ngIf="isShow">
<----extra value----->
</div>`
})
export class ImgPopOverComponent implements OnInit {
@Input()
private src;
private isShow=false;
@HostListener('mouseenter') onMouseEnter() {
this.isShow= true;
}
@HostListener('mouseleave') onMouseLeave() {
this.isShow= false;
}
}
我有这样的指令。
@Directive({ selector: '[authSrc]' })
export class AuthSrcDirective implements OnInit {
@HostBinding()
private src: string;
constructor(private element: ElementRef) { }
ngOnInit() { }
@Input()
set authSrc(src) {
this.src = src+"?access_token=<-token->";
}
}
我想将这两种功能合二为一。
<img-pop [authSrc]="/api/url/to/image"></img-pop>
这样最终的 url 调用将是 /api/url/to/image?access_token= <--token-->
但它会引发Can't bind to 'src' since it isn't a known property of 'img-pop'.
错误
如果我对概念有误,请纠正我。
谢谢你。