我正在使用Angular 2/4。我有功能模块,包括与该功能相对应的所有内容。例如,我有一个建筑模块和一个客户端模块。
这与我的客户端功能模块的结构基本相同。
现在在我的Building模块中,我需要访问ClientService,因为我需要一个与Building相关联的Clients列表。我可以像这样导入客户服务吗?
import { BuildingService } from "../buildingservice";
import { ClientService } from "../../client/clientservice";
@Component({
selector: 'building-detail',
templateUrl: './building-detail.component.html',
providers: [BuildingService, ClientService]
})
export class BuildingDetailComponent extends ComponentBase {
constructor(private buildingService: BuildingService, private clientService: ClientService) {
super();
}
}
如果我将ClientService放在SharedServices文件夹中会不会更好?
答案 0 :(得分:1)
如何整理代码完全取决于您。通过错综复杂的路径导入模块没有任何问题。
如果某些代码在非常远的模块之间共享,那么在代码的组织方式中反映它可能是有意义的。这样一个重命名的东西,以及#34;共享"并将其放在更高的目录中。但是,你再次决定:)
答案 1 :(得分:0)
要使服务正常工作,它应该只添加到您选择的任何模块的providers数组中,因为它实际上取决于您希望如何构建项目,因为这对功能没有任何影响。
该服务将在您向服务器注入的任何组件中工作,无论它是在构建模块还是客户端模块中注册。