2015-12-16 3 views
0

Угловая последняя версия бета-версии: Ошибка: (15, 25) TS2304: Не удается найти имя «Http». пытались дифференциалов вещи, какУгловой 2 HTTP-модуль не загружается через system.js: Ошибка: не удается найти имя «Http»

import {Http} from 'angular2/core'; 
import {Http} from 'angular2/core'; 
import {Http} from 'angular2/http.dev'; 
import {Http} from 'angular2/bundles/http'; 

всех не повезло :(

вот мой компонент:

///<reference path="../../typings/es6-promise/es6-promise.d.ts"/> 
///<reference path="../../typings/zone.js/zone.js.d.ts"/> 

import {Component} from 'angular2/core'; 
import {Injectable} from 'angular2/core'; 
import {Inject} from 'angular2/core'; 
import {HTTP_PROVIDERS, Http} from 'angular2/http'; 

@Component({ 
    providers: [HTTP_PROVIDERS] 
}) 

@Injectable() 
export class MyService { 
    private _val:number; 

    constructor(@Inject(Http) http:Http) { 
     this._val = Math.random(); 
    } 

    public showAlert() { 
     alert(`here is an alert ${this._val}`); 
    } 
} 
+0

Проблема заключается в том, что System.js запутывается в отношении того, какой файл захватить (js или ts), похоже, что это что-то, что сломалось в последней версии ng2 beta – born2net

+1

Do у вас есть 'defaultJSExtensions: true' в вашей системной конфигурации? – drewmoore

+0

спасибо, рисовал, просто увидел, что .. Я нашел ответ в Интернете, но ваш ответ правильный ... нужно добавить defaultJSExtensions: true – born2net

ответ

0

от NG2 бета, необходимых для изменения моих system.js к

<script> 
System.config({ 
    defaultJSExtensions: true, 
    transpiler: 'typescript', 
    packages: { 
    'component': {defaultExtension: 'ts'} 
    }, 
    typescriptOptions: {emitDecoratorMetadata: true} 
}); 
System.import('./component/App.ts') 

надеется, что это поможет кому-то ...

+0

. Это сделало меня хуже. Теперь ни один из моих модулей не загружается:/ –

+0

тоже здесь, сейчас ничего не загружается. – kernowcode

Смежные вопросы