跳到主要内容

config options - 配置列表

@types IPublicTypeEngineOptions

配置方式

init API

import { init } from '@alilc/lowcode-engine';

init(document.getElementById('engine'), {
enableCondition: false,
});

init api

config API

import { config } from '@alilc/lowcode-engine';

config.set('enableCondition', false)

config api

配置详情

源码详见 IPublicTypeEngineOptions

画布

locale - 语言

@type {string}@default {zh-CN}

语言

device - 设备类型

@type {string}

引擎默认支持的 device 类型有 defaultmobileiphonexiphone6

插件 @alilc/lowcode-plugin-simulator-select 支持的 device 类型有 defaultphonetabletdesktop

如果需要自定义的 device 类型,需要补充 device 类型对应的样式,例如 device 为 phone 时,需要补充样式如下:

.lc-simulator-device-phone {
top: 16px;
bottom: 16px;
left: 50%;
width: 375px;
transform: translateX(-50%);
margin: auto;
}

deviceClassName

@type {string}

指定初始化的 deviceClassName,挂载到画布的顶层节点上

appHelper

与 react-renderer 的 appHelper 一致,https://lowcode-engine.cn/site/docs/guide/expand/runtime/renderer#apphelper

enableCondition

@type {boolean}

是否开启 condition 的能力,默认在设计器中不管 condition 是啥都正常展示

disableAutoRender

@type {boolean} @default {false}

关闭画布自动渲染,在资产包多重异步加载的场景有效

renderEnv - 渲染器类型

渲染器类型

@type {string}@default {react}

simulatorUrl

@type {string[]}

设置 simulator 相关的 url

enableStrictNotFoundMode

@type {boolean} @default {false}

当开启组件未找到严格模式时,渲染模块不会默认给一个容器组件

编排

focusNodeSelector - 指定根组件

配置指定节点为根组件

类型定义

  focusNodeSelector?: (rootNode: IPublicModelNode) => Node;

supportVariableGlobally - 全局变量配置

@type {boolean} @default {false}

设置所有属性支持变量配置

开启拖拽组件时,即将被放入的容器是否有视觉反馈

customizeIgnoreSelectors - 点击忽略

配置画布中,需要屏蔽点击事件的元素,即配置的元素默认点击行为均不生效。

类型定义:

  customizeIgnoreSelectors?: (defaultIgnoreSelectors: string[], e: MouseEvent) => string[];

默认值:

() => {
return [
'.next-input-group',
'.next-checkbox-group',
'.next-checkbox-wrapper',
'.next-date-picker',
'.next-input',
'.next-month-picker',
'.next-number-picker',
'.next-radio-group',
'.next-range',
'.next-range-picker',
'.next-rating',
'.next-select',
'.next-switch',
'.next-time-picker',
'.next-upload',
'.next-year-picker',
'.next-breadcrumb-item',
'.next-calendar-header',
'.next-calendar-table',
'.editor-container', // 富文本组件
]
}

enableCanvasLock

@type {boolean} @default {false}

打开画布的锁定操作

enableLockedNodeSetting

@type {boolean} @default {false}

容器锁定后,容器本身是否可以设置属性,仅当画布锁定特性开启时生效

enableMouseEventPropagationInCanvas

@type {boolean} @default {false}

鼠标事件(mouseover、mouseleave、mousemove)在画布中是否允许冒泡,默认不允许。

enableReactiveContainer

@type {boolean} @default {false}

enableContextMenu - 开启右键菜单

@type {boolean} @default {false}

是否开启右键菜单

disableDetecting

@type {boolean} @default {false}

关闭拖拽组件时的虚线响应,性能考虑

disableDefaultSettingPanel

@type {boolean} @default {false}

禁止默认的设置面板

disableDefaultSetters

@type {boolean} @default {false}

禁止默认的设置器

stayOnTheSameSettingTab

@type {boolean} @default {false}

当选中节点切换时,是否停留在相同的设置 tab 上

hideSettingsTabsWhenOnlyOneItem

@type {boolean} @default {false}

是否在只有一个 item 的时候隐藏设置 tabs

hideComponentAction

@type {boolean} @default {false}

隐藏设计器辅助层

thisRequiredInJSE

@type {boolean} @default {true}

JSExpression 是否只支持使用 this 来访问上下文变量,假如需要兼容原来的 'state.xxx',则设置为 false

应用级设计器

enableWorkspaceMode - 应用级设计模式

@type {boolean} @default {false}

开启应用级设计模式

enableAutoOpenFirstWindow

@type {boolean} @default {true}

应用级设计模式下,自动打开第一个窗口

workspaceEmptyComponent

应用级设计模式下,当窗口为空时,展示的占位组件

定制组件

faultComponent

组件渲染错误时的占位组件

notFoundComponent

组件不存在时的占位组件

loadingComponent - loading 组件

自定义 loading 组件

插件

defaultSettingPanelProps

内置设置面板插件的 panelProps

defaultOutlinePaneProps

内置大纲树面板插件的 panelProps

其他

enableStrictPluginMode

@type {boolean}

开启严格插件模式,默认值:STRICT_PLUGIN_MODE_DEFAULT , 严格模式下,插件将无法通过 engineOptions 传递自定义配置项

requestHandlersMap

数据源引擎的请求处理器映射

customPluginTransducer

插件处理中间件,方便提供插件调试能力

类型定义

customPluginTransducer: async (originPlugin: IPublicTypePlugin, ctx: IPublicModelPluginContext, options): IPublicTypePlugin;

defaultOutlinePaneProps

@type {object}

大纲树插件面板默认 props