无法创建插入Angular 4的Angular 2 SPA模板应用程序

时间:2017-05-04 13:46:23

标签: angular

我一直在学习Angular并使用dotnet new angular来创建新的应用程序。我试图将从模板创建的应用程序升级到Angular 4,然后才发现它完全破坏了它。我确实尝试回滚到2但没有成功,现在我发现使用SPA模板从头开始创建新应用程序会导致以下错误。在按Ctrl + F5之前,我没有更改代码。

  

TS2345:类型' {html:string; }'不能分配给' RenderToStringResult |类型的参数RedirectResult | PromiseLike&#39 ;.     输入' {html:string; }'不能分配类型' PromiseLike'。       物业'然后'类型' {html:string; }'

违规文件似乎是boot-server.ts,特别是下面的代码部分。

return requestZone.run<Promise<string>>(() => platform.serializeModule(AppModule)).then(html => {
        resolve({ html: html });
    }, reject);

更新

这是VS2017中的调试问题。 dotnet run工作正常。

1 个答案:

答案 0 :(得分:1)

问题不是来自VS2017,而是一个已更新的软件包,并且基于package.json配置,它将在npm installyarn上更新(或者在您检查时尝试发布) csproj配置),问题包是:"aspnet-prerendering": "2.0.4",刚刚在3-4小时前发布,使用2.0.3解决了这个问题。

尝试使用npm install aspnet-prerendering@2.0.3

这个问题很可能会在几个小时内解决。

dotnet run无法运行npm任务,因为它可以处理wwwroot文件夹中已有的文件。

更新

已推送新的软件包更新以修复此问题2.0.5 https://github.com/aspnet/JavaScriptServices/issues/918