我使用alpha44工作代码,但升级到beta却打败了我。我收到这个错误:
EXCEPTION: No provider for e! (HomeCmp -> RestosSvc -> e)
我在我的引导程序中包含了RestosSvc,并且可以找到该文件。这是我HomeCmp的一部分
import {Component} from 'angular2/core';
import { Resto, RestosSvc } from '../../services/RestosSvc';
@Component({
selector: 'home',
templateUrl: './components/home/home.html',
styleUrls: ['./components/home/home.css'],
directives: [FiltersCmp, ListCmp, MapCmp],
providers: [RestosSvc]
})
export class HomeCmp {
recommendations: Array<Resto> = [];
presetCrits: Object;
selectedResto: number = -1;
top5: boolean;
constructor(public restos: RestosSvc, urlCrits: RouteParams, public router: Router) {
这是RestoSvc
import {Injectable} from 'angular2/core';
import {Http} from 'angular2/http';
import {Observable} from 'rxjs/Rx';
@Injectable()
export class RestosSvc {
http: Http;
constructor(http:Http) {
我错过了什么?
答案 0 :(得分:1)
我们遇到了同样的问题,因为我们在缩小过程中将mangle设置为true。 e!
的没有提供者给了我的一位同事暗示这可能是缩小的问题。检查缩小的文件,并确保使用mangle设置为false时生成的文件。这是一个持续的问题,计划在几周后修复
更多信息: https://github.com/angular/angular/issues/7306 https://github.com/AngularClass/angular2-webpack-starter/issues/262