大佬教程收集整理的这篇文章主要介绍了angular – 组件提供商和模块提供商的区别,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
两者都代表什么?@H_696_2@
编辑@H_696_2@
我有两个组件:LoginComponent和SigninComponent.另一方面,我正在使用自定义库中的Userservice.这个Userservice服务正在寻找一个opaquetoken BASE_PATH:@H_696_2@
@Injectable() export class UseRSService { constructor(@Optional()@Inject(BASE_PATH)
和BASE_PATH是:@H_696_2@
export const BASE_PATH = new OpaqueToken('basePath');
这个opaqueToken在AppModule上设置:@H_696_2@
@NgModule({ bootstrap: [ App ],declarations: [ App,ErrorComponent ],providers: [ ENV_PROVIDERS,
其中ENV_PROVIDERS是根据environtment.ts上的环境设置设置的:@H_696_2@
if ('production' === ENV) { enableProdMode(); PROVIDERS = [ ...PROVIDERS,// custom providers in production { provide: BASE_PATH,useValue: 'http://public.sample.com:8082/commty/cmng' } ]; } else { // Development PROVIDERS = [ ...PROVIDERS,// custom providers in development { provide: BASE_PATH,useValue: 'http://localhost:8082/commty/cmng' } ]; } export const ENV_PROVIDERS = [ ...PROVIDERS ];
我正在设置所有:@H_696_2@
@NgModule({ declarations: [ SigninComponent ],providers: [ UseRSService ] }) export default class SigninModule {
和@H_696_2@
@NgModule({ declarations: [ LoginComponent ],providers: [ UseRSService ] }) export default class LoginModule {
因此,在组件上,我不会将任何服务作为提供者导入,我只声明它们.@H_696_2@
然而,当我加载SigninModule时,我的所有网络请求都被发送到localhost.但是,当我加载LoginModule时,请求被发送到localhost:8282@H_696_2@
以上是大佬教程为你收集整理的angular – 组件提供商和模块提供商的区别全部内容,希望文章能够帮你解决angular – 组件提供商和模块提供商的区别所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。