So importieren Sie das .html-Fragment mit der ES6-Syntax in TypeScript

8

So importieren Sie eine HTML-Vorlage aus einem relativen Pfad:

%Vor%

Der TypeScript-Compiler beschwert sich, dass er das Modul nicht finden kann. Ich habe versucht, eine Ambient-Moduldefinition zu erstellen, aber relative Pfade in Modulnamen sind nicht zulässig. Ich verwende SystemJS als Modullader.

    
rgripper 26.03.2016, 10:37
quelle

4 Antworten

2

Es ist unmöglich.

Aufgrund der Definition dessen, was Modul in Typoskript ist, und soweit ich weiß in ES6 javascript ( importieren ). Modul kann nicht html sein. Der übliche Ansatz besteht darin, ein JavaScript-Modul zu importieren, das eine Zeichenfolge mit HTML, CSS, was auch immer exportiert. Aber das importiert die Datei nicht mit Roh-HTML.

Vielleicht möchten Sie sich auch HTML-Importe ansehen, aber das ist es ganz andere Sache.

    
Amid 26.03.2016, 12:00
quelle
4

Ich verwende kein Typoskript, aber ich verwende ES6. Könnte für Sie nützlich sein.

Die Art, wie ich das löse, besteht darin, Template-Strings mit Anführungszeichen zu deklarieren. Es funktioniert gut für mich, ich wäre glücklich zu wissen, ob jemand denkt, dass dies ein schlechter Habit ist.

unter einem Schnipsel mit Angular (-ui-Router).

index.js

%Vor%

config.js

%Vor%

Der Vollständigkeit halber wird davon ausgegangen, dass indexController an anderer Stelle definiert ist. Diese Konfigurationsfunktion wird auch an einen Ort exportiert, an dem App definiert ist. Aber das alles ist nicht mit der Frage verbunden.

    
Maurits Moeys 19.01.2017 16:14
quelle
1

Sie können es mit der require-Syntax

importieren

1) Erstellen Sie die Datei app.d.ts und fordern Sie eine Definition an, damit das Typoskript weiß, dass es sich um eine Funktion handelt. (Sie müssen keine zusätzliche Bibliothek hinzufügen, System-Unterstützung erfordert Syntax)

%Vor%

2) Jetzt können Sie Ihren HTML-Code mit importieren var template = require ('./ custom-select.html! Text')

Ich habe es sogar noch besser gefunden, weil Sie require inline

verwenden können %Vor%     
Andzej Maciusovic 14.06.2016 10:11
quelle
0

Ich weiß nichts über SystemJS, aber das ist definitiv mit Webpack und dem html-loader

möglich >     
JWindey 27.03.2016 19:08
quelle

Tags und Links