我发现ASPNETCoreTemplatePack by MadsKristensen是使用Angular 2作为前端开发ASP.NET Core应用程序的一个非常好的起点。但是当我开始编辑时,错误列表对话框中出现 448 错误。其中一些来自示例Angular组件,其他一些实际上是由node.js模块生成的。全部来自TypeScript文件。 项目列说虚拟TypeScript项目,我随机打开了一些。
示例
NR。 1:ClientApp/app/components/app/counter/counter.component.ts
@Component({
selector: 'counter',
template: require('./counter.component.html')
})
这里VS说名称"要求"找不到。
Nr 2:node_modules/rxjs/add/operator/map.d.ts
import { MapSignature } from '../../operator/map';
declare module '../../Observable' {
interface Observable<T> {
map: MapSignature<T>;
}
}
错误:增强模块名称无效,模块&#39; ../../可观察&#39;无法找到。
依此类推,正如我所说,其中有近500个。似乎Visual Studio在这里误解了一些东西,因为应用程序正在编译并且所有功能都像预期的那样工作。此外,在错误为真时无法工作的计数器组件会导致require-function加载其视图。所以我想禁用这些错误 - 它们让我在代码中遗漏了真正的错误,这些错误必须修复。
我已尝试过的事情:
TypeScriptCompileBlocked
设置为true,如下所述:http://rostacik.net/2015/08/14/how-to-disable-building-of-typescript-files-in-visual-studio-2015/ tsconfig.json
"exclude": [ "bin", "node_modules" ]
答案 0 :(得分:0)
通过一些研究,我发现在{2}版本中会引用module
或require
等使用的函数以及一些语法结构。首先这让我感到困惑,因为我的package.json
文件已经引用了2.0.0版本中的TypeScript。升级到2.1.5(编写时的最新版本)也不会改变任何内容。
在尝试了其他一些事情之后,我在大海捞针搜索了我们在德国所说的针。我了解到Visual Studio有一个TypeScript for Visual Studio 2015包。这似乎包含一些规则来验证错误列表窗口中的TypeScript。它的版本与TypeScript相同:TypeScript 2.1.5&gt; TypeScript for Visual Studio(2015)2.1.5。
因此非常重要将 TypeScript for Visual Studio 安装为您用作编译器的TypeScript版本。在我的情况下,我在版本1.8.36中使用TypeScript for Visual Studio,因为我是新手,之前从未使用它。好像是VS安装的默认版本。但ASPNETCoreTemplatePack引用2.0.0引起了这个问题。
我的解决方案将导致新问题。 Microsoft的下载页面列出了多个旧版本,如2.1.4或2.0.6以及下载链接。但所有都是指 TypeScript_Dev14Full.exe ,这是最新的(目前2.1.5)。您可以在Visual Studio Marketplace中获得更多版本。
请注意:市场的某些版本包含警告,安装插件会破坏他们的VS或TypeScript。我没试过这个,因为2.1.5的最新版本对我来说很好。但对于那些遇到最新版本问题的人来说,这可能是一个很好的暗示。请注意,备份您的数据并更好地创建某种还原点,以便在出现任何中断时轻松获得可用的开发区域。