• SAP Spartacus B2B Popover Directive 和 Popover Component 的生命周期管理


    解析 SAP Spartacus B2B list 实现,即list.component.html时,因为在Component 模板里遇到了[cxPopover]指令,因此触发依赖注入:

    首先创建directive实例:

    当点击宿主元素 icon 时,因为@HostListener 注解的原因,一旦宿主元素发生了 click 事件后,我们定义在 directive 实现里的handleOpen方法会自动被调用:

    下图标号为1的componentFactoryResolver,来自Popover directive 构造函数的依赖注入;

    标号为2的PopoverComponent,来自我们在另一个文件里实现并通过export 导出的Component:

    标号为3的PopoverContainer,是this.viewContainer(同样是构造函数依赖注入的结果)调用 createComponent 返回的结果,其结构为:

    在这里插入图片描述

    this.popoverContainer.changeDetectorRef.detectChanges();

    手动触发PopoverComponent的Change detection - 变更检测

    然后调用handlePopoverEvents,执行事件处理注册逻辑:

    更多Jerry的原创文章,尽在:"汪子熙":

  • 相关阅读:
    操作系统要点总结
    ARP的通信过程
    判断网段、子网、网络号
    C++要点总结
    枚举类型
    C指针总结
    C运算符总结
    替换空格
    WCF编写时候的测试
    WCF创建到使用到发布
  • 原文地址:https://www.cnblogs.com/sap-jerry/p/14644784.html
Copyright © 2020-2023  润新知