更新到Angular2.0.0-rc.1,无法通过这个错误

Updating to Angular2.0.0-rc.1, can't get past this error

应用程序拒绝找到 symbol-observable - 或者 zone.js 找到 - 即使 rxjs 肯定在那里。

已加载所有内容,如:

<script src="node_modules/es6-shim/es6-shim.js"></script>
<script src="node_modules/zone.js/dist/zone.js"></script>
<script src="node_modules/reflect-metadata/Reflect.js"></script>
<script src="node_modules/systemjs/dist/system.src.js"></script>
<script>
System.config({
  map: {
    '@angular': 'node_modules/@angular',
    'rxjs': 'node_modules/rxjs'
  },
  packages: {
    'dist': { defaultExtension: 'js', format: 'register', main: 'boot.js' },
    '@angular/common': { defaultExtension: 'js', main: 'index.js' },
    '@angular/compiler': { defaultExtension: 'js', main: 'index.js' },
    '@angular/core': { defaultExtension: 'js', main: 'index.js' },
    '@angular/http': { defaultExtension: 'js', main: 'index.js' },
    '@angular/platform-browser': { defaultExtension: 'js', main: 'index.js' },
    '@angular/platform-browser-dynamic': { defaultExtension: 'js', main: 'index.js' },
    '@angular/router': { defaultExtension: 'js', main: 'index.js' },
    'rxjs': { defaultExtension: 'js' }
  }
});
System.import('dist').catch(console.error.bind(console));
</script>

我把所有的代码都放上去here仔细看看。

这可能是因为 rxjs beta.7。在 package.json 中降级到 beta.6 应该可以解决问题。

"rxjs": "5.0.0-beta.6",

angular 团队 issue

有问题

我再次尝试映射到 symbol-observable。这次成功了。去图吧。

System.config({
  map: {
    ...,
    'symbol-observable': 'node_modules/symbol-observable'
  },
  packages: {
    ...,
    'symbol-observable': { defaultExtension: 'js', main: 'index.js'
  }
});

我的项目中突然出现了此线程中第一个 post 中的确切错误。我通过在 packages.json:

中添加这个来修复它
"dependencies": {
  ...
  "symbol-observable": "^0.2.4",
  ...
}

然后执行 npm install。

在 systemjs.config.js 我添加了以下内容:

var map = {
  ...
  'symbol-observable': 'node_modules/symbol-observable'
  ...
};

var packages = {
  ...
  'symbol-observable': { main: 'index.js', defaultExtension: 'js' }
  ...
};