node.js - Highlightjs med Angular?
Dokumentationen för ng2-smart-table-applikationen har code-elementutdrag som ser ut så här:
<code highlight class="typescript">{{ snippets.require }}</code>
Den resulterande dokumentationen ser ut så här.
När man tittar på den resulterande applikations-HTML ser det ut som om highlightjs gör markeringen, men jag ser ingen import av ett Angular-beroende som skulle utföra transformeringen (eller någon förbearbetning av skripten), så jag undrar bara hur det fungerar?
Enligt svaret
Tycker det är riktigt häftigt hur enkelt detta är att göra med Angular:
import { Directive, ElementRef, AfterViewInit } from '@angular/core';
import * as hljs from 'highlight.js';
@Directive({
selector: 'code[highlight]',
})
export class HighlightCodeDirective implements AfterViewInit {
constructor(private elRef: ElementRef) { }
ngAfterViewInit() {
hljs.highlightBlock(this.elRef.nativeElement);
}
}
Svar #1
Kontrollera koden mer noggrant, det finns en highlight-direktiv (ng2-smart-table/src/app/shared/directives/highlight.directive.ts) som använder highlightjs. Det är en del av exempelapplikationen, inte biblioteket, så du behöver kopiera det om du vill göra samma sak i din applikation.