Javascript FormBuilder.js:如何从无线组控件继承?

Javascript FormBuilder.js:如何从无线组控件继承?,javascript,formbuilder,Javascript,Formbuilder,我正在尝试为FormBuilder创建一个新控件,它基本上是一个无线组控件(我的意思是它具有与无线组控件相同的配置),但我需要定义一个自定义build()和onRender()方法 我读了很多次文档,但都没法让它发挥作用,这里有一个简单的例子来说明我正在尝试做什么 if (!window.fbControls) window.fbControls = new Array(); window.fbControls.push(function (controlClass) { class co

我正在尝试为FormBuilder创建一个新控件,它基本上是一个无线组控件(我的意思是它具有与无线组控件相同的配置),但我需要定义一个自定义build()和onRender()方法

我读了很多次文档,但都没法让它发挥作用,这里有一个简单的例子来说明我正在尝试做什么

if (!window.fbControls) window.fbControls = new Array();
window.fbControls.push(function (controlClass) {

  class controlMultipleObjects extends controlClass {

    static get definition() {
      return {
        icon: '\uD83D\uDD89',
        i18n: {
          default: 'Control Multiple Items'
        }
      };
    }

    configure() {
      // this.js = '//cdn.jsdelivr.net/npm/signature_pad@2.3.2/dist/signature_pad.min.js';
    }

    /**
     * build a text DOM element, supporting other jquery text form-control's
     * @return DOM Element to be injected into the form.
     */
    build() {

      this.dom = this.markup('div', null, {class:'multipleObjectsController', id: this.config.name});

      return this.dom;
    }

    onRender() {
    }
  }

  // register this control for the following types & text subtypes
  controlClass.register('multipleObjects', controlMultipleObjects);
  return controlMultipleObjects;
});
这基本上是可行的,新控件“multipleObjects”显示在form builder中,但当打开控件的配置时,它只显示“Value”项。我需要显示多个值,就像收音机组、选择或选择组控件一样

有什么想法吗

谢谢

看一看

您需要像这样在formBuilder中传递选项:

const options = {
    typeUserAttrs: {
        multipleObjects: {
            options: {
                label: 'Class',
                multiple: true,
                options: {
                    'red form-control': 'Red',
                    'green form-control': 'Green',
                    'blue form-control': 'Blue'
                },
            },
        },
    },
}

$("#fb-editor").formBuilder(options)