lowcode-engine icon indicating copy to clipboard operation
lowcode-engine copied to clipboard

高级表单中如何获取字段的值

Open chenfeiwu opened this issue 2 years ago • 8 comments

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

综合场景的demo中高级表单获取字段的值 A clear and concise description of what the bug is. / 请提供清晰且精确的 bug 描述

导入一下scheam

{
  "version": "1.0.0",
  "componentsMap": [
    {
      "package": "@alifd/fusion-ui",
      "version": "1.0.5",
      "exportName": "FormInput",
      "main": "",
      "destructuring": true,
      "subName": "",
      "componentName": "FormInput"
    },
    {
      "package": "@alifd/fusion-ui",
      "version": "1.0.5",
      "exportName": "ProForm",
      "main": "lib/index.js",
      "destructuring": true,
      "subName": "",
      "componentName": "ProForm"
    },
    {
      "package": "@alifd/next",
      "version": "1.25.23",
      "exportName": "Button",
      "main": "",
      "destructuring": true,
      "subName": "",
      "componentName": "Button"
    },
    {
      "package": "@alifd/pro-layout",
      "version": "1.0.1-beta.6",
      "exportName": "P",
      "main": "lib/index.js",
      "destructuring": true,
      "subName": "",
      "componentName": "NextP"
    },
    {
      "package": "@alifd/pro-layout",
      "version": "1.0.1-beta.6",
      "exportName": "Col",
      "main": "lib/index.js",
      "destructuring": true,
      "subName": "",
      "componentName": "NextCol"
    },
    {
      "package": "@alifd/pro-layout",
      "version": "1.0.1-beta.6",
      "exportName": "Row",
      "main": "lib/index.js",
      "destructuring": true,
      "subName": "",
      "componentName": "NextRow"
    },
    {
      "package": "@alifd/pro-layout",
      "version": "1.0.1-beta.6",
      "exportName": "RowColContainer",
      "main": "lib/index.js",
      "destructuring": true,
      "subName": "",
      "componentName": "NextRowColContainer"
    },
    {
      "package": "@alifd/pro-layout",
      "version": "1.0.1-beta.6",
      "exportName": "BlockCell",
      "main": "lib/index.js",
      "destructuring": true,
      "subName": "",
      "componentName": "NextBlockCell"
    },
    {
      "package": "@alifd/pro-layout",
      "version": "1.0.1-beta.6",
      "exportName": "Block",
      "main": "lib/index.js",
      "destructuring": true,
      "subName": "",
      "componentName": "NextBlock"
    },
    {
      "package": "@alilc/lowcode-materials",
      "version": "1.0.7",
      "exportName": "NextText",
      "main": "lib/index.js",
      "destructuring": true,
      "subName": "",
      "componentName": "NextText"
    },
    {
      "package": "@alifd/pro-layout",
      "version": "1.0.1-beta.6",
      "exportName": "PageHeader",
      "main": "lib/index.js",
      "destructuring": true,
      "subName": "",
      "componentName": "NextPageHeader"
    },
    {
      "package": "@alifd/pro-layout",
      "version": "1.0.1-beta.6",
      "exportName": "Page",
      "main": "lib/index.js",
      "destructuring": true,
      "componentName": "NextPage"
    },
    {
      "devMode": "lowCode",
      "componentName": "Page"
    }
  ],
  "componentsTree": [
    {
      "componentName": "Page",
      "id": "node_dockcviv8fo1",
      "props": {
        "ref": "outerView",
        "style": {
          "height": "100%"
        }
      },
      "docId": "doclaqkk3b9",
      "fileName": "/",
      "dataSource": {
        "list": [
          {
            "type": "fetch",
            "isInit": true,
            "options": {
              "params": {},
              "method": "GET",
              "isCors": true,
              "timeout": 5000,
              "headers": {},
              "uri": "mock/info.json"
            },
            "id": "info",
            "shouldFetch": {
              "type": "JSFunction",
              "value": "function() { \n  console.log('should fetch.....');\n  return true; \n}"
            }
          }
        ]
      },
      "state": {
        "text": {
          "type": "JSExpression",
          "value": "\"outer\""
        },
        "isShowDialog": {
          "type": "JSExpression",
          "value": "false"
        }
      },
      "css": "body {\n  font-size: 12px;\n}\n\n.button {\n  width: 100px;\n  color: #ff00ff\n}",
      "lifeCycles": {
        "componentDidMount": {
          "type": "JSFunction",
          "value": "function componentDidMount() {\n  console.log('did mount');\n}",
          "source": "function componentDidMount() {\n  console.log('did mount');\n}"
        },
        "componentWillUnmount": {
          "type": "JSFunction",
          "value": "function componentWillUnmount() {\n  console.log('will unmount');\n}",
          "source": "function componentWillUnmount() {\n  console.log('will unmount');\n}"
        }
      },
      "methods": {
        "testFunc": {
          "type": "JSFunction",
          "value": "function testFunc() {\n  console.log('test func');\n}",
          "source": "function testFunc() {\n  console.log('test func');\n}"
        },
        "onClick": {
          "type": "JSFunction",
          "value": "function onClick() {\n  debugger;\n  console.log(this.$(\"pro-form-entrylefc5k9d\").getFieldsValue());\n  console.log(this.$('forminput-126aab5d').getValue());\n  this.setState({\n    isShowDialog: true\n  });\n}",
          "source": "function onClick() {\n  debugger;\n  console.log(this.$(\"pro-form-entrylefc5k9d\").getFieldsValue());\n  console.log(this.$('forminput-126aab5d').getValue());\n  this.setState({\n    isShowDialog: true\n  });\n}"
        },
        "closeDialog": {
          "type": "JSFunction",
          "value": "function closeDialog() {\n  this.setState({\n    isShowDialog: false\n  });\n}",
          "source": "function closeDialog() {\n  this.setState({\n    isShowDialog: false\n  });\n}"
        },
        "getHelloWorldText": {
          "type": "JSFunction",
          "value": "function getHelloWorldText() {\n  return this.i18n('i18n-jwg27yo4');\n}",
          "source": "function getHelloWorldText() {\n  return this.i18n('i18n-jwg27yo4');\n}"
        },
        "getHelloWorldText2": {
          "type": "JSFunction",
          "value": "function getHelloWorldText2() {\n  return this.i18n('i18n-jwg27yo3', {\n    name: '絮黎'\n  });\n}",
          "source": "function getHelloWorldText2() {\n  return this.i18n('i18n-jwg27yo3', {\n    name: '絮黎'\n  });\n}"
        },
        "onTestConstantsButtonClicked": {
          "type": "JSFunction",
          "value": "function onTestConstantsButtonClicked() {\n  console.log('constants.ConstantA:', this.constants.ConstantA);\n  console.log('constants.ConstantB:', this.constants.ConstantB);\n}",
          "source": "function onTestConstantsButtonClicked() {\n  console.log('constants.ConstantA:', this.constants.ConstantA);\n  console.log('constants.ConstantB:', this.constants.ConstantB);\n}"
        },
        "onTestUtilsButtonClicked": {
          "type": "JSFunction",
          "value": "function onTestUtilsButtonClicked() {\n  this.utils.demoUtil('param1', 'param2');\n}",
          "source": "function onTestUtilsButtonClicked() {\n  this.utils.demoUtil('param1', 'param2');\n}"
        },
        "onClick_new": {
          "type": "JSFunction",
          "value": "function onClick_new() {\n  debugger;\n}",
          "source": "function onClick_new() {\n  debugger;\n}"
        },
        "onChange": {
          "type": "JSFunction",
          "value": "function onChange(e, a, b) {\n  debugger;\n}",
          "source": "function onChange(e, a, b) {\n  debugger;\n}"
        }
      },
      "originCode": "class LowcodeComponent extends Component {\n  state = {\n    \"text\": \"outer\",\n    \"isShowDialog\": false\n  }\n  componentDidMount() {\n    console.log('did mount');\n  }\n  componentWillUnmount() {\n    console.log('will unmount');\n  }\n  testFunc() {\n    console.log('test func');\n  }\n  onClick() {\n    debugger\n    console.log(this.$(\"pro-form-entrylefc5k9d\").getFieldsValue())\n    console.log(this.$('forminput-126aab5d').getValue())\n    this.setState({\n      isShowDialog: true\n    });\n  }\n  closeDialog() {\n    this.setState({\n      isShowDialog: false\n    });\n  }\n  getHelloWorldText() {\n    return this.i18n('i18n-jwg27yo4');\n  }\n  getHelloWorldText2() {\n    return this.i18n('i18n-jwg27yo3', {\n      name: '絮黎',\n    });\n  }\n  onTestConstantsButtonClicked() {\n    console.log('constants.ConstantA:', this.constants.ConstantA);\n    console.log('constants.ConstantB:', this.constants.ConstantB);\n\t}\n\tonTestUtilsButtonClicked(){\n    this.utils.demoUtil('param1', 'param2');\n\t}\n\n\tonClick_new(){\n    debugger\n\t}\n\n\tonChange(e, a, b){\n    debugger\n\t}\n}",
      "hidden": false,
      "title": "",
      "isLocked": false,
      "condition": true,
      "conditionGroup": "",
      "children": [
        {
          "componentName": "NextPage",
          "id": "node_ockzs2vw431",
          "props": {
            "headerDivider": true,
            "minHeight": "100vh",
            "presetNav": true,
            "presetAside": true,
            "footer": false,
            "nav": false,
            "aside": false,
            "placeholderStyle": {
              "gridRowEnd": "span 1",
              "gridColumnEnd": "span 12"
            },
            "headerProps": {
              "background": "surface"
            },
            "header": {
              "type": "JSSlot",
              "value": [
                {
                  "componentName": "NextPageHeader",
                  "id": "node_ockzs2vw433",
                  "props": {},
                  "docId": "doclaqkk3b9",
                  "title": "页面头部",
                  "hidden": false,
                  "isLocked": false,
                  "condition": true,
                  "conditionGroup": "",
                  "children": [
                    {
                      "componentName": "NextRowColContainer",
                      "id": "node_ockzs2vw434",
                      "props": {
                        "rowGap": 20,
                        "colGap": 20
                      },
                      "docId": "doclaqkk3b9",
                      "title": "行列容器",
                      "hidden": false,
                      "isLocked": false,
                      "condition": true,
                      "conditionGroup": "",
                      "children": [
                        {
                          "componentName": "NextRow",
                          "id": "node_ockzs2vw435",
                          "props": {},
                          "docId": "doclaqkk3b9",
                          "title": "行",
                          "hidden": false,
                          "isLocked": false,
                          "condition": true,
                          "conditionGroup": "",
                          "children": [
                            {
                              "componentName": "NextCol",
                              "id": "node_ockzs2vw436",
                              "props": {
                                "colSpan": 1
                              },
                              "docId": "doclaqkk3b9",
                              "title": "列",
                              "hidden": false,
                              "isLocked": false,
                              "condition": true,
                              "conditionGroup": "",
                              "children": [
                                {
                                  "componentName": "NextP",
                                  "id": "node_ockzvfoetv17",
                                  "props": {
                                    "wrap": false,
                                    "type": "body2",
                                    "verAlign": "middle",
                                    "textSpacing": true,
                                    "align": "left"
                                  },
                                  "docId": "dockzvfoetv",
                                  "title": "段落",
                                  "hidden": false,
                                  "isLocked": false,
                                  "condition": true,
                                  "conditionGroup": "",
                                  "children": [
                                    {
                                      "componentName": "NextText",
                                      "id": "node_ockzvfoetv18",
                                      "props": {
                                        "type": "h5",
                                        "children": {
                                          "type": "JSExpression",
                                          "value": "this.state.info?.info",
                                          "mock": "标题标题"
                                        },
                                        "mark": false,
                                        "code": false,
                                        "delete": false,
                                        "underline": false,
                                        "strong": false
                                      },
                                      "docId": "dockzvfoetv",
                                      "hidden": false,
                                      "title": "",
                                      "isLocked": false,
                                      "condition": true,
                                      "conditionGroup": ""
                                    }
                                  ]
                                }
                              ]
                            }
                          ]
                        }
                      ]
                    }
                  ]
                }
              ]
            },
            "isTab": false,
            "contentAlignCenter": false,
            "contentProps": {
              "style": {
                "background": "rgba(255,255,255,0)"
              }
            },
            "navProps": {
              "width": 200
            },
            "asideProps": {
              "width": 200
            },
            "background": "lining"
          },
          "docId": "doclaqkk3b9",
          "title": "页面",
          "hidden": false,
          "isLocked": false,
          "condition": true,
          "conditionGroup": "",
          "children": [
            {
              "componentName": "NextBlock",
              "id": "node_oclefc5i0ij",
              "props": {
                "placeholderStyle": {
                  "height": "100%"
                },
                "noPadding": false,
                "noBorder": false,
                "title": "区域标题",
                "rowGap": 20,
                "colGap": 20,
                "background": "surface",
                "layoutmode": "O",
                "strict": true,
                "colSpan": 12,
                "rowSpan": 1,
                "mode": "transparent",
                "childTotalColumns": 12
              },
              "title": "区域",
              "hidden": false,
              "isLocked": false,
              "condition": true,
              "conditionGroup": "",
              "children": [
                {
                  "componentName": "NextBlockCell",
                  "id": "node_oclefc5i0ik",
                  "props": {
                    "colSpan": 12,
                    "rowSpan": 1,
                    "mode": "procard",
                    "isAutoContainer": true,
                    "title": "区块标题1",
                    "hasDivider": true,
                    "loading": false,
                    "hasCollapse": false,
                    "text": true,
                    "operations": [],
                    "isFillContainer": true,
                    "ref": "nextblockcell-fa141845"
                  },
                  "hidden": false,
                  "title": "",
                  "isLocked": false,
                  "condition": true,
                  "conditionGroup": "",
                  "children": [
                    {
                      "componentName": "NextRowColContainer",
                      "id": "node_oclefc5i0il",
                      "props": {
                        "rowGap": 20,
                        "colGap": 20
                      },
                      "title": "行列容器",
                      "hidden": false,
                      "isLocked": false,
                      "condition": true,
                      "conditionGroup": "",
                      "children": [
                        {
                          "componentName": "NextRow",
                          "id": "node_oclefc5i0im",
                          "props": {},
                          "title": "行",
                          "hidden": false,
                          "isLocked": false,
                          "condition": true,
                          "conditionGroup": "",
                          "children": [
                            {
                              "componentName": "NextCol",
                              "id": "node_oclefc5i0in",
                              "props": {
                                "colSpan": 1
                              },
                              "title": "列",
                              "hidden": false,
                              "isLocked": false,
                              "condition": true,
                              "conditionGroup": "",
                              "children": [
                                {
                                  "componentName": "NextP",
                                  "id": "node_oclefc5i0io",
                                  "props": {
                                    "wrap": false,
                                    "type": "body2",
                                    "verAlign": "middle",
                                    "textSpacing": true,
                                    "align": "left",
                                    "prefix": "",
                                    "full": false,
                                    "flex": false,
                                    "ref": "nextp-840d41fd"
                                  },
                                  "title": "段落",
                                  "hidden": false,
                                  "isLocked": false,
                                  "condition": true,
                                  "conditionGroup": "",
                                  "children": [
                                    {
                                      "componentName": "ProForm",
                                      "id": "node_oclefc5i0ip",
                                      "props": {
                                        "placeholder": "请在右侧面板添加表单项+",
                                        "placeholderStyle": {
                                          "height": "38px",
                                          "color": "#0088FF",
                                          "background": "#d8d8d836",
                                          "border": 0,
                                          "gridArea": "span 4 / span 4"
                                        },
                                        "columns": 4,
                                        "labelCol": {
                                          "fixedSpan": 4
                                        },
                                        "labelAlign": "top",
                                        "emptyContent": "添加表单项",
                                        "ref": "pro-form-entrylefc5k9d",
                                        "operations": [],
                                        "labelTextAlign": "right",
                                        "size": "medium",
                                        "device": "desktop"
                                      },
                                      "docId": "doclefc5i0i",
                                      "title": "高级表单",
                                      "hidden": false,
                                      "isLocked": false,
                                      "condition": true,
                                      "conditionGroup": "",
                                      "children": [
                                        {
                                          "componentName": "FormInput",
                                          "id": "node_oclenpg6bh2",
                                          "props": {
                                            "formItemProps": {
                                              "primaryKey": "8501",
                                              "label": "表单项",
                                              "size": "medium",
                                              "device": "desktop",
                                              "fullWidth": true,
                                              "required": false,
                                              "labelTextAlign": "right"
                                            },
                                            "placeholder": "请输入",
                                            "ref": "forminput-126aab5d",
                                            "__events": {
                                              "eventDataList": [],
                                              "eventList": [
                                                {
                                                  "name": "onPressEnter",
                                                  "disabled": false
                                                },
                                                {
                                                  "name": "onClear",
                                                  "disabled": false
                                                },
                                                {
                                                  "name": "onChange",
                                                  "disabled": true
                                                },
                                                {
                                                  "name": "onKeyDown",
                                                  "disabled": false
                                                },
                                                {
                                                  "name": "onFocus",
                                                  "disabled": false
                                                },
                                                {
                                                  "name": "onBlur",
                                                  "disabled": false
                                                }
                                              ]
                                            }
                                          },
                                          "hidden": false,
                                          "title": "",
                                          "isLocked": false,
                                          "condition": true,
                                          "conditionGroup": ""
                                        },
                                        {
                                          "componentName": "FormInput",
                                          "id": "node_oclenpg6bh3",
                                          "props": {
                                            "formItemProps": {
                                              "primaryKey": "3574",
                                              "label": "表单项",
                                              "size": "medium",
                                              "device": "desktop",
                                              "fullWidth": true,
                                              "required": false
                                            },
                                            "placeholder": "请输入",
                                            "ref": "forminput-e0a5273b"
                                          },
                                          "hidden": false,
                                          "title": "",
                                          "isLocked": false,
                                          "condition": true,
                                          "conditionGroup": ""
                                        },
                                        {
                                          "componentName": "FormInput",
                                          "id": "node_oclenpg6bh4",
                                          "props": {
                                            "formItemProps": {
                                              "primaryKey": "8924",
                                              "label": "表单项",
                                              "size": "medium",
                                              "device": "desktop",
                                              "fullWidth": true,
                                              "required": false,
                                              "labelTextAlign": "right"
                                            },
                                            "placeholder": "请输入"
                                          },
                                          "hidden": false,
                                          "title": "",
                                          "isLocked": false,
                                          "condition": true,
                                          "conditionGroup": ""
                                        },
                                        {
                                          "componentName": "FormInput",
                                          "id": "node_oclenpg6bh5",
                                          "props": {
                                            "formItemProps": {
                                              "primaryKey": "7250",
                                              "label": "表单项",
                                              "size": "medium",
                                              "device": "desktop",
                                              "fullWidth": true,
                                              "required": false
                                            },
                                            "placeholder": "请输入"
                                          },
                                          "hidden": false,
                                          "title": "",
                                          "isLocked": false,
                                          "condition": true,
                                          "conditionGroup": ""
                                        },
                                        {
                                          "componentName": "FormInput",
                                          "id": "node_oclenpg6bh6",
                                          "props": {
                                            "formItemProps": {
                                              "primaryKey": "7939",
                                              "label": "表单项",
                                              "size": "medium",
                                              "device": "desktop",
                                              "fullWidth": true
                                            },
                                            "placeholder": "请输入"
                                          },
                                          "hidden": false,
                                          "title": "",
                                          "isLocked": false,
                                          "condition": true,
                                          "conditionGroup": ""
                                        },
                                        {
                                          "componentName": "FormInput",
                                          "id": "node_oclenpg6bh7",
                                          "props": {
                                            "formItemProps": {
                                              "primaryKey": "3889",
                                              "label": "表单项",
                                              "size": "medium",
                                              "device": "desktop",
                                              "fullWidth": true,
                                              "required": false,
                                              "labelTextAlign": "right"
                                            },
                                            "placeholder": "请输入"
                                          },
                                          "hidden": false,
                                          "title": "",
                                          "isLocked": false,
                                          "condition": true,
                                          "conditionGroup": ""
                                        },
                                        {
                                          "componentName": "FormInput",
                                          "id": "node_oclenpg6bh8",
                                          "props": {
                                            "formItemProps": {
                                              "primaryKey": "5877",
                                              "label": "表单项",
                                              "size": "medium",
                                              "device": "desktop",
                                              "fullWidth": true
                                            },
                                            "placeholder": "请输入"
                                          },
                                          "hidden": false,
                                          "title": "",
                                          "isLocked": false,
                                          "condition": true,
                                          "conditionGroup": ""
                                        },
                                        {
                                          "componentName": "FormInput",
                                          "id": "node_oclenpg6bh9",
                                          "props": {
                                            "formItemProps": {
                                              "primaryKey": "5923",
                                              "label": "表单项",
                                              "size": "medium",
                                              "device": "desktop",
                                              "fullWidth": true
                                            },
                                            "placeholder": "请输入"
                                          },
                                          "hidden": false,
                                          "title": "",
                                          "isLocked": false,
                                          "condition": true,
                                          "conditionGroup": ""
                                        }
                                      ]
                                    },
                                    {
                                      "componentName": "Button",
                                      "id": "node_oclenk5i0w16",
                                      "props": {
                                        "prefix": "next-",
                                        "type": "primary",
                                        "size": "medium",
                                        "htmlType": "button",
                                        "component": "button",
                                        "children": "取消",
                                        "iconSize": "xxs",
                                        "loading": false,
                                        "text": false,
                                        "warning": false,
                                        "disabled": false,
                                        "ref": "button-935fa7bc",
                                        "__events": {
                                          "eventDataList": [
                                            {
                                              "type": "componentEvent",
                                              "name": "onClick",
                                              "relatedEventName": "onClick"
                                            }
                                          ],
                                          "eventList": [
                                            {
                                              "name": "onClick",
                                              "description": "点击按钮的回调\n@param {Object} e Event Object",
                                              "disabled": true
                                            },
                                            {
                                              "name": "onMouseUp",
                                              "disabled": false
                                            }
                                          ]
                                        },
                                        "onClick": {
                                          "type": "JSFunction",
                                          "value": "function(){return this.onClick.apply(this,Array.prototype.slice.call(arguments).concat([])) }"
                                        }
                                      },
                                      "hidden": false,
                                      "title": "",
                                      "isLocked": false,
                                      "condition": true,
                                      "conditionGroup": ""
                                    }
                                  ]
                                }
                              ]
                            }
                          ]
                        }
                      ]
                    }
                  ]
                }
              ]
            }
          ]
        }
      ]
    }
  ],
  "i18n": {
    "zh-CN": {
      "i18n-jwg27yo4": "你好 ",
      "i18n-jwg27yo3": "{name} 博士"
    },
    "en-US": {
      "i18n-jwg27yo4": "Hello ",
      "i18n-jwg27yo3": "Doctor {name}"
    }
  }
}

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

Steps to reproduce the behavior: / 详细复现步骤:


  1. 打开demo地址https://lowcode-engine.cn/demo/demo-general/index.html导入schema
  2. 开启F12调试模式
  3. 输入第一个字段值
  4. 点击取消按钮进入调试,this.$('forminput-126aab5d')无法获取value

中文版示例:

  1. 打开 demo
  2. 点击标题;
  3. 在右侧修改标题内容为「修改后的标题」;
  4. 渲染画布标题组件没有更新显示为「修改后的标题」;

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

A clear and concise description of what did you expect to happen. / 请清晰和精确的描述你预期的行为 可获取表单字段的值

Screenshots (optional) / bug 截图(可选)

Sceenshots for further information. (If applicable.) / 一些有用的截图将会帮助我们更好的明确以及定位问题


Environments (please complete the following information) (required): / 请提供如下信息(必填)

  • AliLowCodeEngine version: [e.g. 1.1.2] / 低代码引擎版本
  • AliLowCodeEngineExt version: [e.g. 1.0.0] / 低代码引擎扩展包版本
  • Browser [e.g. chrome, safari] / 浏览器版本
  • materials / plugins / tools / 其他物料 / 插件 / 工具链版本

(this information can be collected via the manual plugin / 版本信息可通过低代码用户手册插件收集)

Additional context (optional) / 更多额外信息(可选)

Any other context of the problem here. / 可以追加更多的额外信息,帮助定位问题

chenfeiwu avatar Feb 28 '23 04:02 chenfeiwu

昨天我也遇到这个问题,今天找到方法了 方法一: 高级表单配置表单具体项的表单标识 比如表单字段A 配置标识testA 高级表单配置onChange事件,新建方法并绑定
onChangeForm(value){ console.log(value) } 保存并渲染之后,再在input里输入,会自动执行绑定的onChange事件 里面的value 对象就是绑定的整个表单的所有信息,控制台能看到 {testA:'123'} 就能拿到具体的信息 方法二: 这种比较蠢,先给表单一个唯一标识,直接在需要使用数据的地方用document.getElementById('testA').value 因为没有引jQuery,所以直接用document的api

不知道还有没有更好的办法

eatmoreduck avatar Mar 01 '23 06:03 eatmoreduck

@LeoYuan @JackLian @jinchanz 大佬们有没得方案呢,文档翻烂了都没找到

chenfeiwu avatar Mar 03 '23 05:03 chenfeiwu

理论上,目前引擎定义的获取指定组件的 API,只有 this.$(refId) 来获取组件的 ref,然后就是调用 ref 对应的方法了~

此例中,获取 ref 可以得到如下对象 image

BUT getValue / getValues 确实得不到值,应该是组件实现有点问题,ProForm 没开源,bugfix 优先级不高,emmm...

LeoYuan avatar Mar 03 '23 06:03 LeoYuan

另外一个问题:

this.$() 应该要返回 ref,不过 Fusion 系的组件经过 ConfigProvider 的 HOC,只会拿到一个对象包含 getInstance() 方法,调用后才拿到真实的 ref,这个要修复下~ @liujuping

LeoYuan avatar Mar 03 '23 06:03 LeoYuan

另外一个问题:

this.$() 应该要返回 ref,不过 Fusion 系的组件经过 ConfigProvider 的 HOC,只会拿到一个对象包含 getInstance() 方法,调用后才拿到真实的 ref,这个要修复下~ @liujuping

@LeoYuan getInstance 是 Next 组件自己的行为,而不是引擎规范,我理解其实不应该加上这一层,而是用户自己调用。

eternalsky avatar Mar 03 '23 06:03 eternalsky

我刚才试了下,this.$() 能拿到实例,但是 ProForm 没有实例方法让你获取 values,推荐使用方式是使用 ProForm 的 action 按钮直接提交;

另外 @LeoYuan ProFrom 开源了,可以看看代码 https://github.com/alibaba/lowcode-materials/blob/main/packages/fusion-ui/src/components/pro-form/layouts/pro-form/index.tsx

jinchanz avatar Mar 03 '23 07:03 jinchanz

@LeoYuan getInstance 是 Next 组件自己的行为,而不是引擎规范,我理解其实不应该加上这一层,而是用户自己调用。

对,光弘你说的是对的,应该是 ConfigProvider HOC 需要正确返回被包装组件的 ref,引擎可以不做这层兼容~

LeoYuan avatar Mar 03 '23 07:03 LeoYuan