已停用新一代平台

添加模态组件

过程

  1. 创建新的角度组件。
  2. 必须将新创建的组件注册为功能部件模块的 @NgModule 修饰符的 entryComponents 属性的一部分。
     
       @NgModule({
          imports: [
            FormsModule,
            CommonModule,
            TranslateModule,
            SharedModule],
          entryComponents: [
            TransferOrderAddTrackingNumberComponent
          ],
          declarations: [TransferOrderAddTrackingNumberComponent],
          exports: [],
          providers: [TransferOrderSummaryExtnRTConfig]
        })
    
    注: 需要在 extension.module.ts 文件中导入 TransferOrderAddTrackingNumberComponent
  3. store-customization-impl.ts 文件中,根据功能部件更新相应的 ModalComponents 属性。 例如, transferInventoryModalComponents 是 transfer-inventory 模块的属性。
    用于为 transfer-inventory 模块定义新模态组件的 store-customization-impl.ts 文件的样本代码如下所示:
    
    import { StoreCustomizationBase } from '@sim-core/store-customization-base';
       // tslint:disable-next-line:max-line-length
       import { TransferOrderAddTrackingNumberComponent} from './features/transfer-inventory/transfer-order-add-tracking-number/transfer-order-add-tracking-number.component';
        export class StoreCustomizationImpl extends StoreCustomizationBase {
           transferInventoryModalComponents = [TransferOrderAddTrackingNumberComponent];
        }
  4. 使用共享模块中的 ISFNagModalService 服务在窗口模态中打开组件。
    样本代码如下所示:
    
    import {TransferOrderAddTrackingNumberComponent} from '../transfer-order-add-tracking-number/transfer-order-add-tracking-number.component';
    @Injectable()
    export class  TransferOrderSummaryExtnRTConfig {
     constructor(private modalService: NgbModal,
                private nagModalService: ISFNagModalService,
        ) 
        public openAddTrackingNumberModal(entityModel, activeroute) {
              const modalRef = this.modalService.open(TransferOrderAddTrackingNumberComponent, {});
              modalRef.componentInstance.entityModel = entityModel;
              modalRef.result.then(data => {
              if (UIUtilsService.isNotVoid(data) && data['refreshParentScreen']) {
                this.relatedTasksService.sendMessage(true);
              }
              });
        } 
    }