SELECT *
FROM table1 a
WHERE Column2 IN (SELECT mastercolumn2
FROM mastertable)
在上面的代码中,我的问题是如果无处@Directive({
selector: '[myHighlight]'
})
export class HighlightDirective {
static test: number = 5;
constructor(private el: ElementRef) { }
highlight(color: string) {
this.el.nativeElement.style.backgroundColor = color;
}
}
属性将导致Angular创建myHighlight
类的实例,会发生什么。我的猜测是创建了HighlightDirective
类本身(不是某个实例)。我对吗?如果是,我如何访问该课程
答案 0 :(得分:0)
“创造一个阶级”的概念有点令人困惑。如果您的代码被转换为EcmaScript5,那么如果看起来像这样(简化):
var HighlightDirective = (function() {
function HighlightDirective(el) {
this.el = el;
}
HighlightDirective.test = 5;
HighlightDirective.prototype.highlight = function() {
this.el.nativeElement.style.backgroundColor = color;
};
return HighlightDirective;
)();
因此,在“类创建”方面 - 定义函数没有什么不同。
现在,当您需要具有此类的文件时 - 该函数将在JS运行时创建。
到目前为止,还没有Angular。
我不是Angular dev,但我认为除非需要,否则框架不会创建指令的实例。
至于“Angular如何将元素与此类关联的指令” - 您可以查看angular
源代码。这个“如何”的问题对于SO格式而言过于宽泛