Заставить PrismJS подсветку синтаксиса работать в Аурелии - PullRequest
0 голосов
/ 17 декабря 2018

Я пытаюсь добавить PrismJS в качестве подсветки синтаксиса в моем приложении Aurelia (на основе машинописи), и я на полпути, как показано ниже

1 - Установить prismjs

yarn add prismjs

2 - добавитьcss & code part

<template>
  <require from="prismjs/themes/prism.css"></require>

  <pre><code class="language-sql">${highlightedSQL}

3 - импортировать prismjs в компонент и вызвать подсветку.

import "prismjs";
import prismsql from "prismjs/components/prism-sql";

let Prism; // very weird, I have to declare a global variable, other wise it won't work(typescript error)
@inject(HttpClient)
export class Detail {

highlight() {
    this.highlightedSQL = Prism.highlight(data.sql, Prism.languages.sql, 'sql');
}
}

и я получаю эту ошибку

Unhandled rejection TypeError: Cannot read property 'highlight' of undefined

Какой может быть правильный способ заставить его работать?

1 Ответ

0 голосов
/ 29 декабря 2018

плохо опубликую мой комментарий как ответ только для того, чтобы вопрос был закрыт.

вместо import "prismjs"; и let Prism; у вас должно быть import Prism from 'prismjs';

...