使用JavaScriptServices / Universal时,Angular2形成错误

时间:2017-02-06 19:25:53

标签: angular angular2-universal

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

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

我正在导入 FormsModule ReactiveFormsModule

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

Twitter.post('statuses/update', 
   {status: 'Here is a link - https://example.com'}, 
   function(error, tweet, response){ 
      if(error){ console.log(error); } 
         console.log(tweet); 
         console.log(response); 
   }
);

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

  

异常:调用节点模块失败并显示错误:预渲染失败   因为错误:TypeError:_angular_core.InjectionToken不是   构造函数   C:\ XXX \ ClientApp \ DIST \主server.js:35055:42

我错过了什么?当我没有使用JavaScriptServices启动器进行服务器端渲染时,我的表单设置工作得很好。

1 个答案:

答案 0 :(得分: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",