2016-06-07 14 views
3

Ich versuche Prism.js Syntax Highlighter Client-Seite als npm Abhängigkeit, anstatt es von <script src="..."> Tags zu laden. Hier ist die Prism Referenz in package.jsonClient-Seite Prism.js mit npm

{ 
    "dependencies": { 
     "prismjs": "^1.5.1" 
    } 
} 

Und die Art und Weise versuche ich es in meinem Code zu verwenden

import Prism from 'prismjs' 
Prism.highlightAll(); 

Dies ergibt folgende Ergebnisse:

  • Tokenizing Werke für Grund Sprachen (hTML, JavaScript ...)
  • Tokenizing funktioniert nicht für andere spezifische Sprachen (lua, Lenker ...)
  • Für alle Sprachen wird Syntaxcoloring nicht angewendet
  • (CSS-Datei nicht geladen zu sein scheinen)

    Ich frage mich

So

  • Gibt es andere sprachspezifische Pakete (wie prismjs-Lenker zum Beispiel)?
  • Gibt es themenspezifische Pakete (wie prismen okaidia zum Beispiel), die die CSS importieren würde?

-

TL; DR

Wie laden/verwenden Prism.js Client-Seite von npm anstelle von Script-Tags?

+0

npm wie in Remote-Repository, so dass Sie nicht die Datei in Ihr Projekt zum Download? – silicakes

+0

@silicakes NPM wie in Paket-Manager für eine Vue.js App (ähnlich React.js) – Jivan

+0

muss sagen, dass ich die Frage nicht auf bekommen hätte, bis ich Ihre Antwort zu lesen, Sie im Grunde importierter-Anweisungen in Ihre Quelle kompilieren wollten mit Webpaket. Sie haben mich ganz verwirrt [: – silicakes

Antwort

8

Ich fand schließlich den Weg, dies zu tun.

1. In style-loader und css-loader

{ 
    "dependencies": { 
     "style-loader": "^0.13.1", 
     "css-loader": "^0.23.0", 
     "prismjs": "^1.5.1" 
    } 
} 

2. Legen Sie CSS-Dateien in webpack.config.js

module: { 
    loaders: [ 
     { 
      test: /\.css/, 
      loader: 'style-loader!css-loader' 
     } 
    ] 
} 

3. Importieren von Dateien zu wünschen package.json in der Anwendung

+0

ughhh nur das funktionierte für mich "Import" prismjs; ', dann Prism war ein globaler, ich versuchte ein paar andere Möglichkeiten, hat nicht funktioniert, super nervt ... Ich sehe nirgends in ihren Dokumenten, dass der Import erwähnt Code Webpack-Stil .. –