dart2js 可能会生成.js.map
,.js.deps
和.precompiled.js
.
他们的目的是什么?而且我不知道为什么dart2js
在完成编译后不删除它们。
所有文件都是由dart2js故意生成的:
.js:应用程序的 JavaScript 输出
.precompiled.js:JavaScript 输出,但支持内容安全策略 (CSP)
.js.map:用于在浏览器中调试 JavaScript 代码的源映射文件。它包含从 JavaScript 到 Dart 代码行的映射。
.js.deps:包含用于编译的所有参考文件的列表,适用于调试,但我不确定这一点。
以下是我在写这篇文章时认为是正确的:
.js
- dart2js 的主要 JavaScript 输出
对我们来说,约定是 -o 选项来设置生成的 Javascript 文件名以结尾,.dart.js
以区分生成的 Javascript 和 Dart 项目中的显式 Javascript。例如:
dart2js -o main.dart.js main.dart
pub-build
默认情况下会这样做。dart.js文件假定使用了这个约定。示例 Dart .gitignore 文件通常包括*.dart.js
.
.js.map
- 提供从 JavaScript 到 Dart 的源映射,使调试更容易
.js.deps
- 使用 dart2js 编译时使用了哪些文件
.info.json
- 包含生成代码信息的 json 文件(如果--dump-info
指定)
.js_1.part.js
等.js_2.part.js
- 部分延期进口
示例 Dart .gitignore 文件通常包含*.js_
这些文件。
该--deferred-map
选项将生成一个 json 文件,您必须为其提供文件名。
.precompiled.js
不再由 dart2js 生成
看: