1

我开始学习 ionic 2,在我的 app.ts 文件中导入依赖项时遇到问题。

当我想使用时:

"import {Http} from "angular2/http";

它告诉我,这个主题的错误:

[ts] cannot find module 'angular2/http'.

这是我的 package.json 的内容:

"dependencies": {
"@angular/common": "^2.0.0-rc.1",
"@angular/compiler": "^2.0.0-rc.1",
"@angular/core": "^2.0.0-rc.1",
"@angular/http": "^2.0.0-rc.1",
"@angular/platform-browser": "^2.0.0-rc.1",
"@angular/platform-browser-dynamic": "^2.0.0-rc.1",
"@angular/router": "^2.0.0-rc.1",
"es6-shim": "^0.35.0",
"ionic-angular": "2.0.0-beta.7",
"ionic-native": "^1.1.0",
"ionicons": "3.0.0",
"reflect-metadata": "^0.1.3",
"rxjs": "5.0.0-beta.6",
"zone.js": "^0.6.12"
}
4

2 回答 2

5

好的,我找到了解决方案,

在 Ionic 2,Beta 7 中,我们应该使用:

从'@angular/http'导入{Http};

于 2016-05-21T10:41:18.450 回答
4

以防万一这对某人有用,您需要进行一些其他更改才能升级到Ionic 2 beta 7(或现在的 beta 8)。

您可以在此处查看推荐的步骤(以及类似的重大更改) 。

=========

编辑:

正如Bond - Java Bond所建议的那样,如果链接失效,这些是破坏性的变化:

2.0.0-beta.7 (2016-05-19) 重大更改

角度更新到 2.0.0-rc.1

Angular 已更新到 2.0.0-rc.1,请按照以下步骤更新 Angular。

  1. 编辑package.json并删除angular2条目:

    "angular2": "2.0.0-beta.15"
    
  2. 然后,从终端运行以下命令来更新 Ionic 和 Angular,或者查看 starter 的 package.json 更改并更新每个版本:

    npm install --save ionic-angular@2.0.0-beta.7 @angular/core @angular/compiler @angular/common @angular/platform-browser @angular/platform-browser-dynamic @angular/router @angular/http rxjs@5.0.0-beta.6 zone.js@0.6.12 reflect-metadata
    
  3. 从终端运行以下命令以更新 gulp 任务ionic-gulp-scripts-copy

    npm install --save-dev ionic-gulp-scripts-copy@2.0.0
    
  4. 然后,将应用程序中的任何导入从 更改angular2@angular。例如,以下。

    import {ViewChild} from 'angular2/core';
    import {Http} from 'angular2/http';
    

    变成

    import {ViewChild} from '@angular/core';
    import {Http} from '@angular/http';
    
  5. 删除angular2-polyfillsin的导入index.html

    <script src="build/js/angular2-polyfills.js"></script>
    

    并将其替换为以下脚本:

    <script src="build/js/zone.js"></script>
    <script src="build/js/Reflect.js"></script>
    
  6. 将所有模板变量替换ngForlet. 例如:

    *ngFor="#session of group.sessions"
    

    变成

    *ngFor="let session of group.sessions"
    
  7. 替换所有模板变量virtualScroll。例如:

    *virtualItem="#item"
    

    变成

    *virtualItem="let item"
    
  8. 查看Angular 更改日志以了解更深入的更改。

于 2016-06-07T09:15:32.657 回答