Angular RC2无法加载router.umd和core.umd

时间:2016-06-16 17:17:26

标签: angular systemjs

当从Angular2 RC1移动到RC2时,我遇到了一些问题。其中一个原因是因为他们改变了打字结构,在这篇文章中提到了TS2300 Duplicate Identifier个问题。解决了这个问题后,我发现了很多与核心和路由器模块有关的404错误。

注意:

@angular/core/core.umd.js not found and @angular/router/router.umd.js 404 (Not Found) errors

由于这些错误,角度永远不会激发,我仍然坚持使用默认的基于HTML的加载信息,而不是我的应用。

2 个答案:

答案 0 :(得分:2)

正如Angular2 RC2快速入门文章中所述,请通过在终端/控制台窗口中运行node -v和npm -v来验证您是否至少运行了node v5.x.x和npm 3.x.x.较旧的版本会产生错误。

我可以在我的机器上运行Angular2 RC快速启动应用程序。

我的环境是 - Windows7 64位操作系统,VScode 1.2.1,节点v4.4.3,npm v3.9.6和chrome浏览器。

6月21日更新:

确保您拥有最新的systemjs.config.js文件。在RC2发布后的几天后添加了以下块 -

  function packUmd(pkgName) {
    packages['@angular/'+pkgName] = { main: '/bundles/' + pkgName + '.umd.js', defaultExtension: 'js' };
  }

答案 1 :(得分:1)

对此的解决方案隐藏在angular2 quickstart中标签systemjs.config.js文件的一个小变化中 - 对于想要从RC1升级到RC2而没有阅读每个单词的人来说非常容易忽略在“快速入门”页面上。

注意RC1的system.config.js文件的建议'end'(定义npPackageNames数组后的所有内容)如下所示:

// Add package entries for angular packages
  ngPackageNames.forEach(function(pkgName) {
    packages['@angular/'+pkgName] = { main: pkgName + '.umd.js', defaultExtension: 'js' };
  });
  var config = {
    map: map,
    packages: packages
  }
  System.config(config);
})(this);

而RC的system.config.js文件的新建议“结束”现在看起来像这样:

  // Individual files (~300 requests):
  function packIndex(pkgName) {
    packages['@angular/'+pkgName] = { main: 'index.js', defaultExtension: 'js' };
  }
  // Bundled (~40 requests):
  function packUmd(pkgName) {
    packages['@angular/'+pkgName] = { main: '/bundles/' + pkgName + '.umd.js', defaultExtension: 'js' };
  }
  // Most environments should use UMD; some (Karma) need the individual index files
  var setPackageConfig = System.packageWithIndex ? packIndex : packUmd;
  // Add package entries for angular packages
  ngPackageNames.forEach(setPackageConfig);
  var config = {
    map: map,
    packages: packages
  };
  System.config(config);
})(this);

进行此更改让每个人都知道在哪里可以找到router.umd.js,platform-b​​rowser-dynamic,http.umd.js和core.umd.js文件。 ...允许应用程序启动。