从Angular2 beta1迁移到Angular2 beta15 - .map()错误

时间:2016-04-19 09:52:47

标签: typescript angular rxjs rxjs5 typescript1.8

我正在尝试将项目从Angular2 beta1 迁移到Angular2 beta15 ,我遇到了一些问题。

我收到错误消息:'Observable< 'map'属性不存在回复>'

包含此错误的代码示例:

import { Injectable } from 'angular2/core';
import { Http, Response, Headers } from 'angular2/http';
import { Observable } from 'rxjs/Observable';
import { HelperModule } from './helpers.module';
import { BlogPost } from './model';
import 'rxjs/add/operator/map';

/**
 * Service dealing with blog data
 */
@Injectable()
export class DataService {

    constructor(private http: Http) { }

    /**
     * Call API to list available blog posts
     */
    listBlogPosts() {
        return this.http.get(HelperModule.UrlBuilder.BuildPostListUrl()).map(res => (<Response>res).json());
    }

}

此处提供代码:https://github.com/AdrienTorris/AspNet5Angular2Playground

编辑:我正在使用 rxjs 5.0.0-beta6 typescript 1.8.10 ,目标 es6

2 个答案:

答案 0 :(得分:1)

尝试使用最新版本的Typescript(1.9)来编译代码。在一些次要版本的TS 1.8中,模块增强被窃听。 RXJS在5.0.0-beta2之后改变了它定义模块的方式。

您可以使用:npm install -g typescript@next

尝试夜间构建

答案 1 :(得分:0)

您需要导入[ { "package_id":"1234", "from":"CA", "arrive_time":"05-02-2016" }, { "package_id":"4567", "from":"DE", "arrive_time":"05-04-2016" } ] 运算符:

map

或所有运营商:

import 'rxjs/add/operator/map';

看到这个问题: