Skip to content

Plain Text / Code Editor ​

The aceeditor element is great for editing HTML, CSS, JSON, or any other type of code in your app. This is the same element that is used by throughout the BetterForms interface.

KeyValue(s)TypeDescription
typeaceeditorstring
langstringcode language options: html, javascript, markdown, plain_text, css, json
modelstring, object or arraythe field or JSON node of the model used for the source
getAsJSONoptionalbooleanif true, the model is stringified for editing. This allows you to edit the JSON directly in the MODEL (vs it being stored as a string (all other languages)
heightoptionalstringdefault of 700px else element height can be specified 300px, 70% are valid values.
themeoptionalstringThe theme used in the editor
readOnlyoptionalbooleanIf true, the editor content cannot be edited.
foldDepthoptionalnumberApplies code folding when the editor first loads.
gutterclickoptionalfunctionCallback fired when the gutter is clicked and the current line can be parsed as a JSON key/value pair.

Notes:

  • Supported languages in the component include html, javascript, markdown, plain_text, css, and json.
  • Built-in themes loaded by BetterForms include chrome, solarized_light, and dracula.
  • When getAsJSON is true, the editor reads and writes the model as parsed JSON rather than a plain string.

Example ​

yaml
// Sample JSON editor ( will put stringified json text into the model field )
{
  "getAsJSON": false,
  "height": "500px",
  "label": "EDIT Some JSON",
  "lang": "json",
  "model": "sourceCode",
  "styleClasses": "col-md-12",
  "type": "aceeditor"
}

Klai Studio documentation