Combine different blocklets to form a more powerful blocklet.

Demo

Demo:

https://github.com/blocklet/component-demo

blocklet.yml:

https://github.com/blocklet/component-demo/blob/main/blocklet.yml

Config Services

The service configuration of Parent blocklet and Child blocklet are independent, not unified.

For the specific configuration method of services, see https://github.com/blocklet/blocklet-specification/blob/main/docs/meta.md

Parent blocklet services

  • Parent blocklet services are configured in interface.services in parent blocklet.yml

Child blocklet services

  • Child blocklet services are configured in interface.services in child blocklet.yml
  • When children.mountPoints.services is configured in parent blocklet.yml, it will be merged with child blocklet.yml interface.services

Examples of merger strategies:

parent blocklet.yml:

name: parent-blocklet
interfaces:
  - name: parentInterfaceName
children:
  - name: child-blocklet
    resolve: 'xxxx'
    mountPoints:
      - root:
          - interfaceName: parentInterfaceName
        child:
          - interfaceName: childInterfaceName
        services:
          - name: s1
          - name: s2

child blocklet.yml:

name: child-blocklet
interfaces:
  - name: childInterfaceName
    services:
      - name: s2
      - name: s3

Then the services of child blocklet are:

  • s1 (from parent children.mountPoints.services)
  • s2 (from parent children.mountPoints.services)
  • s3 (from child interface.services)