我有一个服务,我注入了我的应用程序组件。
app.component.ts
import { Component } from '@angular/core';
import {ProductService} from '../../../products/Classes/Product.Service';
import {TestService } from '../../../products/Classes/test.service';
@Component({
selector: 'pm-app',
moduleId:module.id,
templateUrl: '../View/PageTitle.html',
providers:[ProductService,TestService]
})
export class AppComponent {
pageTitle:string ='Acme Product Management';
}
我的服务存在于 P roducts文件夹中,而不是 p roducts文件夹中。当我在导入语句中将其更改为大写时,我的应用程序会断开“No Provider For ...”。有人可以告诉我为什么会这样。我不知道为什么!!!
答案 0 :(得分:1)
如果您的班级在此档案中被命名为ProduceService
,则该作品
import {ProductService} from '../../../Products/Classes/product.service';
答案 1 :(得分:1)
文件名区分大小写。
使用import {ProductService} from '../../../Products/Classes/product.service';
答案 2 :(得分:1)
我发现了问题
在我的 app.module
中import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { ProductListComponent } from '../../../products/component/product-list';
import { AppComponent } from '../Component/app.component';
import {FormsModule} from '@angular/forms';
import {ProductListFilterPipe} from '../../../products/component/product-list-filter.pipe';
import {StarComponent} from '../../star/Component/star.component';
@NgModule({
imports: [
BrowserModule,
FormsModule
],
declarations: [ AppComponent,ProductListComponent,ProductListFilterPipe,StarComponent ],
bootstrap: [ AppComponent ]
})
export class AppModule { }
我的ProductListComponent和ProductListFilterPipe的导入具有小写p。我把它改成了鞋面,现在它起作用了。
总结:路径在某种意义上区分大小写。从我的测试来看,它不是关于匹配文件夹案例的引用,而是保持引用一致。
由于