在ionic 2中导入angular2 / http有错误“找不到模块”

时间:2016-05-21 10:28:31

标签: angular typescript ionic2 ionic3

我开始学习离子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"
}

2 个答案:

答案 0 :(得分:5)

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

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

  

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

答案 1 :(得分:4)

如果这对某人有用,为了升级到 Ionic 2 beta 7 (或现在是beta 8),您需要做一些其他更改。

您可以查看建议的步骤(以及重大更改here

======

修改

正如 Bond - Java Bond 所暗示的那样,这些是链接失效时的重大变化:

2.0.0-beta.7(2016-05-19)突破性变化

Angular Update to 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,或者查看启动程序的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. 从终端运行以下命令以更新ionic-gulp-scripts-copy的gulp任务:

    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-polyfillsindex.html的导入:

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

    并将其替换为以下脚本:

    <script src="build/js/zone.js"></script>
    <script src="build/js/Reflect.js"></script>
    
  6. ngFor中的所有模板变量替换为let。例如:

    *ngFor="#session of group.sessions"
    

    变为

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

    *virtualItem="#item"
    

    变为

    *virtualItem="let item"
    
  8. 查看Angular Changelog了解更多深度更改。