从Angular 5升级到6后,我将其启动并在本地运行。它在build和build --prod中运行。我确实在.NET MVC应用程序中拥有它。但是,在VSTS上进行构建时,会弹出一些错误。它说。
node_modules\@angular\compiler\src\output\output_ast.d.ts(602,15): Error TS2474: Build:In 'const' enum declarations member initializer must be constant expression.
node_modules\@angular\core\src\render3\interfaces\container.d.ts(35,5): Error TS1169: Build:A computed property name in an interface must directly refer to a built-in symbol.
node_modules\@angular\core\src\sanitization\bypass.d.ts(55,14): Error TS2535: Build:Enum type 'BypassType' has members with initializers that are not literals.
只有在VSTS上的构建失败,并且在CompileTypeScriptWithTSConfig的过程中出现:
我确实运行Typescript版本2.7.2,并且我已经将csproj Typescript版本设置为2.7。由于Visual Studio不支持2.9.2,而Angular 6.1.4不支持版本3.0.0
答案 0 :(得分:1)
您的VSTS构建必须使用的TypeScript版本早于2.7,因为错误消息switchport mode trunk
在2.7及更高版本中不存在。看来您至少需要使用2.7来编译那些类型声明文件。我不知道什么控制着VSTS构建的TypeScript版本。如果您提供更多信息,我可能会提供更多帮助。