Bereitstellung von nicht kompilierten Versionen von Assets in Rails 3.1 und höher

8

Ich arbeite gerade an einer Integration von Dart in die Rails Asset Pipeline.

Die Zusammenstellung funktioniert bereits; .dart -Dateien werden von der Asset-Pipeline in .js kompiliert. Es sollte jedoch auch eine nicht kompilierte .dart Version geben, die von Dartium interpretiert werden kann.

Der übliche Weg ist, dass .dart Dateien in der HTML-Quelle mit dem Typ "application/dart" enthalten sind. Dann gibt es dart.js , wodurch diese .dart ersetzt werden. Dateien mit der entsprechenden .js Version, wenn der Browser Dart nicht versteht und foo.dart durch foo.dart.js ersetzt.

Mein Problem ist, dass die Asset-Pipeline die kompilierte JavaScript-Version bereitstellt, selbst wenn der Client foo.dart anfordert. foo.dart sollte die ursprüngliche, nicht kompilierte Version bereitstellen, nur foo.dart.js sollte kompiliert werden.

Quelle für ruby-dart und Dart-Schienen

Bearbeiten : Ich dachte daran, nur die rohen .dart -Dateien in den öffentlichen Ordner zu kopieren, aber das ist keine Option, da die Quelldatei, die von der Asset-Pipeline gesehen wird, möglicherweise auch% co_de enthält % Dateien, die dann in eine einzige .dart -Datei kompiliert werden. Daher werden nicht alle .js -Dateien kopiert.

    
amiuhle 05.07.2012, 11:16
quelle

2 Antworten

1

Sie können Ihre .dart-Dateien direkt in public / assets /

ablegen

Sie sollten nur die Assets, die Sie vorverarbeiten möchten, in App / Assets / (oder Vendor / Assets / ... usw.) einfügen. Die Assets, die nicht vorverarbeitet werden sollen, können direkt in den Ordner public / assets /

gestellt werden     
Litmus 29.08.2013 08:32
quelle
-1

Ich frage mich, ob es vielleicht einfacher ist, die gesamte Asset-Pipeline zu überspringen und sich auf den Dart-Editor zu verlassen, um Ihr JavaScript zu kompilieren, wenn Sie mit Ihrem Code zufrieden sind. Entschuldigung, ich weiß, das ist ein bisschen Ghetto.

    
Shannon -jj Behrens 24.08.2012 01:23
quelle