visual studio用于打字稿文件的个人设置

时间:2015-02-26 07:41:59

标签: visual-studio typescript

在我的visual studio项目属性中,我启用了复选框“将JavaScript输出合并到文件中”。 我可以从此输出中排除某些打字稿文件吗?我想将这个(排除的)文件编译成单独的js文件。

2 个答案:

答案 0 :(得分:3)

我的案例中的解决方案是修改csproj:

  1. 更改文件目标
     <TypeScriptCompile Include="file.ts" />

     <CustomTypeScriptCompile Include="file.ts" /> 
    1. 添加&#34; CustomTypeScriptCompile&#34;目标:
    2.     <PropertyGroup>
          <CustomCompileTsFiles>@(CustomTypeScriptCompile->'%(FullPath)')</CustomCompileTsFiles>
          <SplitedCompileTsFiles>$(CustomCompileTsFiles.Replace(';', ' '))</SplitedCompileTsFiles>
          </PropertyGroup>
      
          <Target Name="CustomTypeScriptCompile" BeforeTargets="Build">
          <Exec Command="tsc $(SplitedCompileTsFiles) --sourcemap -t ES5" />
          </Target>
      

答案 1 :(得分:0)

不幸的是,你无法通过VS项目和.ts文件设置来实现。

您可以使用grunt任务运行器扩展(在article)+ grunt-typescript插件中描述自定义TypeScript构建任务,&#34; gruntfile.js&#34;样本内容:

grunt.initConfig({
    typescript: {
        buildmodules: {
            src: ['modules/*.ts'],
            dest: 'bin/modules.js',
            options: {
                module: 'amd', //or commonjs
                target: 'es5', //or es3
                basePath: 'path/to/typescript/files',
                sourceMap: true,
                declaration: true
            }
        },
        tests: {
            src: ['Tests/*.ts'],
            dest: 'bin/tests.js',
            options: {
                module: 'amd', //or commonjs
                target: 'es5', //or es3
                basePath: 'path/to/typescript/files',
                sourceMap: true,
                declaration: true
            }
        }
    }
});

grunt.loadNpmTasks("grunt-typescript");

此外,您还可以使用Web Essentials扩展来捆绑由TSC生成的单独的.js文件。