我有一个在.net 4.7.2上运行的asp.net core 2.2项目,其中包括Microsoft.TypeScript.MSBuild nuget包。
每次我向项目中添加新的打字稿(.ts或.tsx)文件时,Visual Studio都会自动添加:
<ItemGroup><TypeScriptCompile Remove="myFile.ts" /></ItemGroup>
插入到我的项目.csproj文件中。
这是我的tsconfig文件:
{
"compilerOptions": {
// Target latest version of ECMAScript.
"target": "esnext",
// Search under node_modules for non-relative imports.
"moduleResolution": "node",
// Process & infer types from .js files.
"allowJs": false,
"jsx": "react",
// Don't emit; allow Babel to transform files.
"noEmit": true,
// Enable strictest settings like strictNullChecks & noImplicitAny.
"strict": true,
// Disallow features that require cross-file information for emit.
"isolatedModules": true,
// Import non-ES modules as default imports.
"esModuleInterop": true,
"skipLibCheck": true,
"baseUrl": ".",
"paths": {
/* my paths */
}
},
"include": [
/* my typescript folders */
],
"exclude": [ "node_modules" ]
}
请注意,我仅使用软件包对文件进行类型检查,实际的编译是使用Babel完成的。
能帮我理解为什么Visual Studio在我的项目中添加了这些TypeScriptCompile Remove吗?我在做错什么吗?
答案 0 :(得分:1)
添加了“删除”条目,以使嵌套的filename.js和filename.js.map文件不会出现在项目文件夹结构中。该指令明确告诉Visual Studio不要编译该文件,而是允许您使用其他编译器(通过NPM下载的TSC或什至Angular编译器)。基本上,它告诉VisualStudio摆脱干扰。