日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

user.config.ts文件里定义的配置是如何合并到SAP Spartacus的标准配置里去的

發(fā)布時間:2023/12/19 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 user.config.ts文件里定义的配置是如何合并到SAP Spartacus的标准配置里去的 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

user.config.ts文件里提供的默認配置:

  • userRoutingConfig
  • userCmsConfig
  • userTableConfigFactory - function

provideDefaultConfig的實現(xiàn):

export function provideDefaultConfig(config: any = {}): ValueProvider {return {provide: DefaultConfigChunk,useValue: config,multi: true,}; }

運行時,作為 SAP Spartacus global configuration object這個龐大的配置對象,就是從一個個module里提供的默認配置,一點點合并而成的。

import { CommonModule } from '@angular/common'; import { NgModule } from '@angular/core'; import { ConfigModule } from '../../../config/config.module'; import {COST_CENTERS_NORMALIZER,COST_CENTER_NORMALIZER,COST_CENTER_SERIALIZER, } from '../../../cost-center/connectors/cost-center/converters'; import { OccCostCenterListNormalizer } from './converters/occ-cost-center-list-normalizer'; import { OccCostCenterNormalizer } from './converters/occ-cost-center-normalizer'; import { OccCostCenterSerializer } from './converters/occ-cost-center-serializer'; import { defaultOccCostCentersConfig } from './default-occ-cost-centers-config';@NgModule({imports: [CommonModule, ConfigModule.withConfig(defaultOccCostCentersConfig)],providers: [{provide: COST_CENTERS_NORMALIZER,useExisting: OccCostCenterListNormalizer,multi: true,},{provide: COST_CENTER_NORMALIZER,useExisting: OccCostCenterNormalizer,multi: true,},{provide: COST_CENTER_SERIALIZER,useExisting: OccCostCenterSerializer,multi: true,},], }) export class CostCenterOccModule {}

withConfig的實現(xiàn):

import { ModuleWithProviders, NgModule } from '@angular/core'; import { provideConfig, provideConfigFactory } from './config-providers'; import { ConfigurationService } from './services/configuration.service';@NgModule({}) export class ConfigModule {// To make sure ConfigurationService will be instantiated, we inject it into// module constructorconstructor(_configurationService: ConfigurationService) {}/*** Import ConfigModule and contribute config to the global configuration** To provide default configuration in libraries provideDefaultConfig should be used instead.** @param config Config object to merge with the global configuration*/static withConfig(config: object): ModuleWithProviders<ConfigModule> {return {ngModule: ConfigModule,providers: [provideConfig(config)],};}/*** Import ConfigModule and contribute config to the global configuration using factory function** To provide default configuration in libraries provideDefaultConfigFactory should be used instead.** @param configFactory Factory function that will generate configuration* @param deps Optional dependencies to factory function*/static withConfigFactory(configFactory: Function,deps?: any[]): ModuleWithProviders<ConfigModule> {return {ngModule: ConfigModule,providers: [provideConfigFactory(configFactory, deps)],};}/*** Module with providers, should be imported only once, if possible, at the root of the app.** @param config*/static forRoot(config: any = {}): ModuleWithProviders<ConfigModule> {return {ngModule: ConfigModule,providers: [provideConfig(config)],};} }


更多Jerry的原創(chuàng)文章,盡在:“汪子熙”:

總結(jié)

以上是生活随笔為你收集整理的user.config.ts文件里定义的配置是如何合并到SAP Spartacus的标准配置里去的的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。