add template
This commit is contained in:
34
src/app/app.code.component.ts
Normal file
34
src/app/app.code.component.ts
Normal file
@@ -0,0 +1,34 @@
|
||||
import { Component, ElementRef, AfterViewInit, Input, NgModule, ViewChild } from '@angular/core';
|
||||
import { CommonModule } from '@angular/common';
|
||||
|
||||
@Component({
|
||||
selector: 'app-code',
|
||||
template: `
|
||||
<pre [ngClass]="'language-' + lang"><code #code><ng-content></ng-content>
|
||||
</code></pre>
|
||||
`,
|
||||
styleUrls: ['./app.code.component.scss']
|
||||
})
|
||||
export class AppCodeComponent implements AfterViewInit {
|
||||
|
||||
@Input() lang = 'markup';
|
||||
|
||||
@ViewChild('code') codeViewChild: ElementRef;
|
||||
|
||||
constructor(public el: ElementRef) { }
|
||||
|
||||
ngAfterViewInit() {
|
||||
// @ts-ignore
|
||||
if (window['Prism']) {
|
||||
// @ts-ignore
|
||||
window['Prism'].highlightElement(this.codeViewChild.nativeElement);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@NgModule({
|
||||
imports: [CommonModule],
|
||||
exports: [AppCodeComponent],
|
||||
declarations: [AppCodeComponent]
|
||||
})
|
||||
export class AppCodeModule { }
|
||||
Reference in New Issue
Block a user