相关疑难解决方法(0)

Angular:找不到Promise,Map,Set和Iterator

安装角之后,打字稿编译器不断收到一些错误约没有找到Promise,Map,SetIterator.

到现在为止我忽略了它们,但现在我需要Promise这样我的代码可以工作.

import {Component} from 'angular2/core';
@Component({
    selector: 'greeting-cmp',
    template: `<div>{{ asyncGreeting | async}}</div>`
})
export class GreetingCmp {
    asyncGreeting: Promise<string> = new Promise(resolve => {
// after 1 second, the promise will resolve
        window.setTimeout(() => resolve('hello'), 1000);
    });
}

Additional information:
npm -v is 2.14.12
node -v is v4.3.1
typescript v is 1.6
Run Code Online (Sandbox Code Playgroud)

错误:

................ERROS OF MY CODE.................
    C:\Users\armyTik\Desktop\angular2\greeting_cmp.ts
    Error:(7, 20) TS2304: Cannot find name 'Promise'.
    Error:(7, 42) TS2304: …
Run Code Online (Sandbox Code Playgroud)

javascript typescript angular

170
推荐指数
8
解决办法
11万
查看次数

类型'Observable <Response>'上不存在属性'map'

我试图从Angular调用API但是我收到此错误:

Property 'map' does not exist on type 'Observable<Response>'

这个类似问题的答案并没有解决我的问题:Angular 2 beta.17:'Observable <Response>'类型中不存在属性'map'.

我正在使用Angular 2.0.0-beta.17.

asp.net-core-mvc visual-studio-2015 typescript1.8 angular

168
推荐指数
11
解决办法
20万
查看次数

Angular 2 2.0.0-rc.1属性'map'在类型'Observable <Response>'上不存在与问题报告不同

虽然这与Angular 2 beta.17看起来相同,但是'Observable <Response>'类型中不存在属性'map'

这是一个新版本,这些解决方案不适用于这个新发布的版本

我已经更新到最新的Angular 2 rc1并且无法编译.我有没有承认'承诺'的问题我最终直接安装es6-promise打字来解决这个问题.我试过输入各种导入语句但没有运气.我正在2015年的visual studio中运行

import 'rxjs/Rx';
import {Observable} from 'rxjs/Observable';
import {Observer} from 'rxjs/Observer';
import 'rxjs/add/operator/share';
import 'rxjs/add/operator/map';

return this._http.post(url, null, args).map(extractData).toPromise();
Run Code Online (Sandbox Code Playgroud)

但继续得到'Observable'类型不存在属性'map'

我的包文件是

"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",
"@angular/router-deprecated": "2.0.0-rc.1",


"systemjs": "0.19.27",
"es6-shim": "^0.35.0",
"reflect-metadata": "^0.1.3",
"rxjs": "5.0.0-beta.6",
"zone.js": "^0.6.12",

"bootstrap": "^3.3.6",
"breeze-client": "~1.5.6",
"handlebars": "^4.0.5"
},
"devDependencies": {
"typescript": "^1.8.10",
"typings": "^0.8.1",
"gulp": "^3.9.1",
"jasmine-core": "~2.4.1",
"karma": "^0.13.22",
"karma-chrome-launcher": …
Run Code Online (Sandbox Code Playgroud)

rxjs typescript angular

62
推荐指数
5
解决办法
5万
查看次数

错误:无法解析'rxjs/add/operator/map'

这是app.module.ts我试图在不同的项目中完成导入地图,它工作正常,但在这个项目中,它不起作用.

    import { BrowserModule } from '@angular/platform-browser';
    import { NgModule } from '@angular/core';
    import {HttpModule} from '@angular/http';

    import { AppComponent } from './app.component';
    import { PagesComponent } from './pages/pages.component';

    @NgModule({
      declarations: [
        AppComponent,
        PagesComponent
      ],
      imports: [
        BrowserModule,
        HttpModule

      ],
      providers: [],
      bootstrap: [AppComponent]
    })
    export class AppModule { }
Run Code Online (Sandbox Code Playgroud)

app.component.ts

import { Component } from '@angular/core';
import {PageService} from './page.service';

@Component({

  selector: 'app-root',
   templateUrl: './app.component.html',
   styleUrls: ["../assets/public/css/adminstyle.css",
            "../assets/public/css/demo.css",
          "../assets/public/css/style.css"
        ,"../assets/public/css/stylesheet.css"],
  providers:[PageService]
})
export class AppComponent {
  title …
Run Code Online (Sandbox Code Playgroud)

rxjs angular rxjs6

17
推荐指数
3
解决办法
3万
查看次数

ASP.Net MVC Angular 2 Final

有人用ASP.Net MVC尝试过Angular 2 RC Final吗?

我在使用ASP.Net MVC配置Angular 2 RC 6时遇到了麻烦,直到beta 17一切正常.

具有以下配置的package.json似乎不起作用:

"dependencies": {
    "@angular/common": "2.0.0-rc.6",
    "@angular/compiler": "2.0.0-rc.6",
    "@angular/core": "2.0.0-rc.6",
    "@angular/forms": "0.3.0",
    "@angular/http": "2.0.0-rc.6",
    "@angular/platform-browser": "2.0.0-rc.6",
    "@angular/platform-browser-dynamic": "2.0.0-rc.6",
    "@angular/router": "3.0.0-rc.1",

    "systemjs": "0.19.27",
    "core-js": "^2.4.0",
    "reflect-metadata": "^0.1.3",
    "rxjs": "5.0.0-beta.6",
    "zone.js": "^0.6.12",

  },
Run Code Online (Sandbox Code Playgroud)

恢复包在输出窗口中显示以下输出:

====Executing command 'npm install'====


npm WARN package.json @ No description
npm WARN package.json @ No repository field.
npm WARN package.json @ No README data
npm http GET http://registry.npmjs.org/systemjs
npm http GET http://registry.npmjs.org/angular/compiler
npm http GET http://registry.npmjs.org/angular/core
npm http …
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc asp.net-mvc-5 asp.net-core-mvc asp.net5 angular

11
推荐指数
1
解决办法
6124
查看次数

Angular2 beta.12和RxJs 5 beta.3的可观察错误

你好,

我正在使用VS2015中运行的Angular2 beta 12.当我将rxjs从5.0.0-beta.2更新到beta.3时,我会遇到一系列与我的承诺有关的例外情况.

例如

  1. 属性map在类型上不存在Observable<Response>
  2. 属性share不存在于类型中Observable<Response>
  3. 环境模块声明不能指定相对模块名称
  4. 环境模块不能嵌套在其他模块或命名空间中.

的package.json

{
  "name": "ASP.NET",
  "version": "0.0.0",
  "scripts": {
    "tsc": "tsc",
    "tsc:w": "tsc -w",
    "lite": "lite-server",
    "start": "concurrent \"npm run tsc:w\" \"npm run lite\" "
  },
  "dependencies": {
    "angular2": "2.0.0-beta.12",
    "systemjs": "0.19.24",
    "es6-promise": "3.1.2",
    "es6-shim": "0.35.0",
    "reflect-metadata": "0.1.3",
    "rxjs": "5.0.0-beta.3", // beta.2 allowed project to build
    "zone.js":"0.6.6"
  },
  "devDependencies": {
    "gulp": "3.9.1",
    "gulp-concat": "2.6.0",
    "gulp-cssmin": "0.1.7",
    "gulp-uglify": "1.5.3",
    "rimraf": "2.2.8",
    "concurrently": "2.0.0",
    "lite-server": "2.1.0",
    "typescript": "1.8.9" …
Run Code Online (Sandbox Code Playgroud)

observable typescript asp.net-core-mvc rxjs5 angular

7
推荐指数
3
解决办法
1万
查看次数

"主题<{}>"类型中不存在"地图"属性

所以,我已经看过其他关于类似问题的其他帖子,但没有一个解决方案有帮助.

我也在IntelliJ IDEA 15中进行此开发,而不是Visual Studio.我目前使用的是Typescript 2.0.3.

import { Injectable } from '@angular/core';
import { Effect, StateUpdates, toPayload } from '@ngrx/effects';
import { Subject } from 'rxjs/Subject';
import 'rxjs/add/operator/mergeMap';
import 'rxjs/add/observable/dom/webSocket'
import 'rxjs/add/operator/map';

import { AppState } from '../reducers';
import { NGRXWebSocketService } from '../shared/ngrxWebsocket.service';
import { BASE_URL } from "../shared/ngrxWebsocket.service";

export interface WebsocketMessage {
    data: string
}

@Injectable()
export class WebsocketEffects {

constructor(private updates$:StateUpdates<AppState>,
            private ngrxWebSocketService: NGRXWebSocketService) {
}

@Effect() _recieve$ = this.ngrxWebSocketService.getSubject()
    .map((websocketUpdate: WebsocketMessage) => {
        let message = …
Run Code Online (Sandbox Code Playgroud)

rxjs ngrx angular

5
推荐指数
1
解决办法
3915
查看次数

"FirebaseObjectObservable <any>"类型中不存在属性"take"

我在使用angularfire2时遇到打字稿编译错误:

'FirebaseObjectObservable'类型中不存在属性'take'

我正在从rxjs导入take操作符,所以这个问题没有帮助:AngularFire2类型:"属性'获取'在类型'FirebaseObjectObservable <any>'上不存在"

进口:

import { Component } from '@angular/core';
import { FormControl } from '@angular/forms';
import { AngularFire, FirebaseListObservable, FirebaseObjectObservable } from 'angularfire2';
import { Subscription } from 'rxjs';
import 'rxjs/add/operator/debounceTime';
import 'rxjs/add/operator/throttleTime';
import 'rxjs/add/operator/take';
Run Code Online (Sandbox Code Playgroud)

导致错误的代码:

this.af.database.object(`/xyz`).take(1);
Run Code Online (Sandbox Code Playgroud)

编译,如果我转换为'任何':

var test: any = this.af.database.object(`/xyz`);
test.take(1);
Run Code Online (Sandbox Code Playgroud)

版本:

"typescript": "^2.1.4"  
"rxjs": "^5.0.3"
"angularfire2": "^2.0.0-beta.6-preview"
Run Code Online (Sandbox Code Playgroud)

我也测试并使用'take'对rxjs Observable工作正常.由于FirebaseObjectObservable扩展了Observable,它也应该可以正常工作.有什么想法为什么打字稿在这里给我一个错误?

rxjs typescript angularfire2

5
推荐指数
1
解决办法
5299
查看次数

缺少Angular 2中@Angular包的TypeScript类型定义

现在我已将我的应用程序更新到Angular2 v2.0.0-rc.1,当我的应用程序被捆绑在webpack中时,我再次看到TypeScript编译错误/警告消息.@angular我从TypeScript源文件中引用的任何包都会出现这些消息,例如:

ERROR in ./src/app/app.ts
(1,34): error TS2307: Cannot find module '@angular/core'.

ERROR in ./src/app/app.ts
(3,76): error TS2307: Cannot find module '@angular/common'.

ERROR in ./src/app/app.ts
(4,30): error TS2307: Cannot find module '@angular/http'.
Run Code Online (Sandbox Code Playgroud)

使用Angular2的早期beta版本,我遇到类似的类似的消息问题,PromiseMap在我的app.ts文件顶部包含类似的东西.

///<reference path="node_modules/angular2/typings/browser.d.ts"/>
Run Code Online (Sandbox Code Playgroud)

我可以参考Angular2包的d.ts文件@angular来解决问题吗?到目前为止,似乎typings系统没有任何可用的东西:

MFO-Mac:angular2-oauth2 mfo$ typings search '@angular'
No results found for search
Run Code Online (Sandbox Code Playgroud)

现在我将我的TypeScript tsconfig.json文件配置为以ES6为目标.但是,如果我改变它的目标,而不是ES5,我不明白这些@angular错误,但我反而得到普遍ES6类错误,如Promise,SetMap.这是我为ES6配置的文件:

{
  "version": "1.6.2",
  "compilerOptions": { …
Run Code Online (Sandbox Code Playgroud)

javascript angularjs typescript webpack angular

4
推荐指数
1
解决办法
3990
查看次数

类型'对象'上不存在Angular 6属性'map'

我有一个api,返回像这样的对象/数组:

(2) [{...}, {...}]      object

  0: {a: '1', b: {id: '1'}}
  1: {a: '2', b: {id: '2'}}
Run Code Online (Sandbox Code Playgroud)

所以它看起来像对象的数组(但是debuges说'对象').

所以在我的代码中我有:

return this.http.get(this.url).pipe(
  map(datas => {
    return datas.map(data => {
      let object = {
        a: data['a'],
        b: data['b']['id'],
      }
      return object;
    })
  })
);
Run Code Online (Sandbox Code Playgroud)

但那里:

return datas.map(data => {
Run Code Online (Sandbox Code Playgroud)

我收到一个错误:

Property 'map' does not exist on type 'Object'.
Run Code Online (Sandbox Code Playgroud)

但应用程序运行良好是正确显示此数据.但这个错误很烦人.

我能做什么?

angular6

4
推荐指数
2
解决办法
7339
查看次数

Angular Observable:在解析前修改数据

我试图在通过这种方式解析之前转换数据,但订阅者获得未转换的数据。

@Injectable()
export class OrderService {
    getAll(): Observable< Array<Order> > {
        let url = 'http://fakeapi.com';
        return this.http.get( url )
          .pipe(
            tap( (data: any) => {
                /*
                * MAKE DATA TRANSFORMATIONS HERE
                */
            }),
            catchError( (err: any, caught: Observable<{}>) => {
              console.log('error while GET : ' + url);
              console.warn(err);
              return caught;
            })
          );
    }
}
Run Code Online (Sandbox Code Playgroud)

这是一个订阅者:

this._orderService.getAll().subscribe( data => {
  this.orders = data;
  console.log('\nplanning-overview-page : _orderService.getAll : data ', data);
});
Run Code Online (Sandbox Code Playgroud)

observable rxjs angular

3
推荐指数
1
解决办法
4911
查看次数