Form.io Lazy Load Renderer

by brendanbond

HTML

<script src="https://cdn.form.io/js/formio.embed.js"></script>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/font/bootstrap-icons.css">
<div class="container">
  <div id="formio"></div>
</div>

JavaScript

const formDefinition = {
  "components": [{
    "label": "Select",
    "widget": "choicesjs",
    "tableView": true,
    "data": {
      "values": [{
          "label": "apples",
          "value": "apples"
        },
        {
          "label": "oranges",
          "value": "oranges"
        }
      ]
    },
    "key": "select",
    "type": "select",
    "input": true
  }],
};
Formio.createForm(document.getElementById('formio'), formDefinition).then(function(form) {
  const selectComponent = form.getComponent('select');
  selectComponent.component.data.values = [{
    label: "apples",
    value: "apples"
  }, {
    label: "oranges",
    value: "oranges"
  }]
  form.redraw();
});