【问题标题】:Typescript compile on save not working in cordova .jsproject - 2015打字稿编译保存在cordova .jsproject - 2015中不起作用
【发布时间】:2015-05-25 01:27:02
【问题描述】:

我为 Visual Studio 2015 安装了 Typescript 1.5 beta 工具,并创建了一个新的 Cordova Typescript 项目。项目模板包含一些 .ts 文件,但我无法在保存时编译这些文件。

奇怪的是,如果我使用带有 Typescript 模板的 Html 5 创建一个新项目,app.ts 文件会在保存时编译。只有在这个 .jsproj cordova 项目中它才会忽略 TypeScript 编译。为什么?

我看到他们使用不同的目标(对于 Html 5 项目使用 Microsoft.Typescript.targets,而在 cordova 项目中使用 Microsoft.TypeScript.MDA.targets:

<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\ApacheCordovaTools\vs-mda-targets\Microsoft.TypeScript.MDA.targets" />

对于这两种情况,我都验证了文件存在于它们各自的位置。我什至尝试使用非 MDA 目标。没有运气。我还在项目的根目录中包含了一个空的 tsconfig.json 文件,仍然没有运气。

如何让 Typescript 文件像在其他项目类型中一样在保存时进行编译?

我还有启用的工具>选项>文本编辑器>打字稿>编译不属于项目的文件以及安装的Web Essentials 2015...没有任何效果!

【问题讨论】:

    标签: cordova typescript visual-studio-2015 visual-studio-cordova


    【解决方案1】:

    我没有尝试,但看看你是否可以通过在调试和发布版本的 prject 文件中将 &lt;TypeScriptIncludeComments&gt;false&lt;/TypeScriptIncludeComments&gt; 的值从 false 更改为 true 来使其工作。

    【讨论】:

      【解决方案2】:

      同样的问题,我创建的项目添加了typedefinition文件并且没有获得js文件。

      编辑

      最后我发现发生了什么你可以检查文件 appBundle.js 所有类型的脚本文件都被编译并保存在一个文件中我认为这与 gulp 或 Grunt 有关。

      【讨论】:

        【解决方案3】:

        同样的问题,刚刚为我找到了一个可行的解决方案! 在您的 jsproject 文件中添加/编辑以下行:

          <PropertyGroup Condition="'$(Configuration)' == 'Debug'">
            <TypeScriptCompileOnSaveEnabled>true</TypeScriptCompileOnSaveEnabled>
            <TypeScriptRemoveComments>false</TypeScriptRemoveComments>
            <TypeScriptSourceMap>true</TypeScriptSourceMap>
          </PropertyGroup>
          <PropertyGroup Condition="'$(Configuration)' == 'Release'">
            <TypeScriptCompileOnSaveEnabled>true</TypeScriptCompileOnSaveEnabled>
            <TypeScriptRemoveComments>true</TypeScriptRemoveComments>
            <TypeScriptSourceMap>false</TypeScriptSourceMap>
          </PropertyGroup>
        

        注意“TypeScriptCompileOnSaveEnabled”属性的值为“true”。

        【讨论】:

          【解决方案4】:

          您可以简单地设置使用:工具 > 选项 > 文本编辑器 > TypeScript > 项目 > 常规,然后选中“保存时编译”然后确定。给你。

          我使用名为“grunt-ts”的任务运行器的另一种方式来执行此操作,我更喜欢使用任务运行器来帮助我编译 .ts 文件,它还提供了详细的功能,包括 watch 这样做。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2015-10-23
            • 1970-01-01
            • 1970-01-01
            • 2013-08-19
            • 1970-01-01
            相关资源
            最近更新 更多