2

我有一个使用JavaScriptServices starter创建的 Angular2 应用程序。

我遇到的问题是,如果我在组件中有一个表单,则会出现运行时错误。

我正在导入FormsModuleReactiveFormsModule

我的表格看起来像这样......

<form (ngSubmit)="onSubmit()" #loginForm="ngForm" >
...
</form>

我得到的错误是......

异常:调用节点模块失败并出现错误:预渲染因错误而失败:TypeError: _angular_core.InjectionToken 不是 C:\XXX\ClientApp\dist\main-server.js:35055:42 的构造函数

我错过了什么?当我不使用 JavaScriptServices 启动器进行服务器端渲染时,我的表单设置运行良好。

4

1 回答 1

0

我找到了解决方案。我使用的是最新版本的 Angular。它还不兼容。

阅读此 GitHub 问题页面后,我发现恢复 Angular 版本解决了问题https://github.com/angular/angular/issues/13432

我现在正在使用以下版本,一切似乎都很好。

 "@angular/common": "2.0.2",
 "@angular/compiler": "2.0.2",
 "@angular/core": "2.0.2",
 "@angular/forms": "2.0.2",
 "@angular/http": "2.0.2",
 "@angular/platform-browser": "2.0.2",
 "@angular/platform-browser-dynamic": "2.0.2",
 "@angular/platform-server": "2.0.2",
 "@angular/router": "3.0.2",
于 2017-02-06T21:21:26.923 回答