【问题标题】:Purpose? appBundle.js in TypeScript Apache Cordova目的? TypeScript Apache Cordova 中的 appBundle.js
【发布时间】:2015-05-11 19:41:10
【问题描述】:

为什么Visual Studio 2015 RC 在您的 Cordova 项目根目录的“scripts”文件夹中编译 TypeScript,并将它们复制为一个名为 “appBundle.js” 的 JavaScript 文件,位于 “www/scripts” 文件夹下?

这是最佳做法吗?
这是否仅适用于 Visual Studio?
这是一种 Apache Cordova 方法吗?

我只能找到关于 appbundle.js 的文档:https://github.com/Microsoft/cordova-docs/blob/59cbbb28102f84c1db159c3a4d3d66da659ffff8/tutorial-gulp/gulp-typescript.md

【问题讨论】:

    标签: visual-studio-cordova


    【解决方案1】:

    感谢您使用 VS 2015 RC!

    在构建 Cordova 应用程序时,通常您希望将所有 Web 资产(包括 JavaScript 文件)放在 www 文件夹中,然后在本机平台构建期间使用该文件夹。

    Visual Studio 在实际平台构建(iOS、Windows、Android)之前预编译所有 TS 文件,将它们连接起来并将一个名为“appBundle.js”的文件放入 www 文件夹。

    虽然不鼓励更改此设置,但您可以在以下位置找到此设置:C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v14.0\ApacheCordovaTools\vs-mda-targets\Microsoft.MDA.FileMirroring.targets

    <TypeScriptOutFile>$(ProjectDir)\www\scripts\appBundle.js</TypeScriptOutFile>
    

    【讨论】:

    • Subhag Oak,感谢您的回复。我试图弄清楚为什么 appBundle.js 被用于 Apache Cordova 的原因。特别是,由于 VS HTML application with TypeScript 从每个 .ts 文件创建单独的 .js 并且不会编译成单个文件。 VS Apache Cordova 方法的合理性是什么?
    • 理由是减少资产的数量。在 Web 开发环境中,我们发现开发人员会连接他们的 ts 文件,这就是我们坚持的模式。
    • 再次感谢您的回复。我在想tsconfig.json 将允许对TypeScripts 编译进行更多控制。使用tsconfig.json,我可以根据需要设置我的编译器选项。此外,我可以使用TSD 来管理我的 TypeScript 定义。例如,tsd.json, gulp and gulp-tsd 来管理我的打字并创建tsd.d.ts。我只是想确定一个好的工作流程。我喜欢在我的工作流程中使用 NPM、Bower 和 Gulp 的想法,因为我可以完全控制。 appBundle.js 很棒,但我认为我无法控制。
    • 随着 VS 2015 的发布,这种变化是否发生了变化?我有一个 typescript/cordova 项目,现在我已经升级到 VS 2015 的发布版本,但它无法构建。它还立即将 typescript 文件编译到原始 .ts 文件旁边的 .js 文件中。这非常令人困惑......
    • 只是为了跟进。在 VS 2015 的最终版本中,我发现我需要添加一个 tsconfig.json 文件来控制 Typescript 编译的发生方式。一定有某种默认设置运行良好。我还需要添加一个 tsd.json 并根据需要使用 tsd 来包含我的打字稿定义文件。对定义文件使用 Nuget 包也不一样。
    猜你喜欢
    • 1970-01-01
    • 2015-09-04
    • 2017-08-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-01
    • 2020-08-29
    • 2017-01-15
    相关资源
    最近更新 更多