alibaba/lowcode-engine

meta.ts 中的 extraProps.setValue 在初始化时不被调用

Open

#558 aperta il 27 mag 2022

Vedi su GitHub
 (1 commento) (0 reazioni) (0 assegnatari)TypeScript (2228 fork)batch import
help wanted

Metriche repository

Star
 (12.714 star)
Metriche merge PR
 (Nessuna PR mergiata in 30 g)

Descrizione

Describe the bug (required) / 详细描述 bug(必填)

在 snippet 中设置的初始属性不会导致对应的 extraProps.setValue 调用。


To Reproduce (required) / 如何复现 bug?(必填,非常重要)

  1. 用脚手架生成一个新的组件工程;
  2. 参照 https://github.com/alibaba/lowcode-materials/blob/main/packages/fusion-lowcode-materials/lowcode/responsive-grid/meta.ts 实现一个返回 ResponsiveGrid 的布局组件, layout 和 extraProps.setValue 完全从该例子拷贝;
  3. 添加如下的 snippet:
const snippets: Snippet[] = [
  {
    "title": "弹性布局(4:8)",
    "screenshot": "https://alifd.alicdn.com/fusion-cool/icons/icon-antd/1-1.png",
    "schema": {
      "componentName": "SomeBlock",
      "props": {
        layout: '4:8',
      },
    }
  }
];
  1. 运行 yarn lowcode:dev 进行调试。组件可以正常拖进来使用,也可以看到属性框中的 layout 值是 4:8 ,但是并没有执行 setValue (用 console.log 验证),必须再手动修改一下 layout 的值才会触发 setValue,(比如在后面加上一个空格再删掉);

Expected behavior (required) / 预期行为(必填,非常重要)

应能够在明确设置初始属性的时候调用对应的 extraProps.setValue

Guida contributor