我目前正在将 Dart 集成到 Rails Assets 管道中。
编译已经开始了; .dart
文件被编译成 .js
由 Assets 管道。但是,也应该有一个未编译的.dart
Dartium 可以解释的版本。
通常的方式是.dart
文件包含在 html 源代码中,类型为 "application/dart"
.然后是 dart.js ,替换那些 .dart
具有相应 .js
的文件如果浏览器不理解 Dart 版本,替换 foo.dart
与 foo.dart.js
.
我的问题是,即使客户端请求 foo.dart
, Assets 管道仍在为编译后的 JavaScript 版本提供服务。 . foo.dart
应该提供原始的、未编译的版本,仅 foo.dart.js
应该编译。
ruby-dart 的来源和
dart-rails
编辑 : 我想只是复制原始的.dart
文件到公用文件夹,但这不是一个选项,因为 Assets 管道看到的源文件可能包含其他 .dart
文件,然后编译成一个 .js
文件。所以,不是所有的.dart
文件将被复制。
最佳答案
你可以把你的 .dart 文件直接放在 public/assets/
您应该只将要预处理的 Assets 放入 app/assets/(或 vendor/assets/... 等)。不需要预处理的 Assets ,可以直接放到 public/assets/文件夹
关于ruby-on-rails - 在 rails 3.1+ 中提供 Assets 的未编译版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11343203/