mirror of
https://github.com/alibaba/lowcode-engine.git
synced 2026-01-15 18:58:11 +00:00
fix: 低代码组件下缺失 getNode 方法 & 低代码组件多层渲染下报错问题
This commit is contained in:
parent
cb1016c715
commit
0cccb29da9
@ -444,7 +444,6 @@ export class SimulatorRendererContainer implements BuiltinSimulatorRenderer {
|
|||||||
}
|
}
|
||||||
|
|
||||||
const renderer = this;
|
const renderer = this;
|
||||||
const { componentsMap: components } = renderer;
|
|
||||||
|
|
||||||
class LowCodeComp extends React.Component<any, any> {
|
class LowCodeComp extends React.Component<any, any> {
|
||||||
render() {
|
render() {
|
||||||
@ -458,7 +457,7 @@ export class SimulatorRendererContainer implements BuiltinSimulatorRenderer {
|
|||||||
return createElement(LowCodeRenderer, {
|
return createElement(LowCodeRenderer, {
|
||||||
...extraProps, // 防止覆盖下面内置属性
|
...extraProps, // 防止覆盖下面内置属性
|
||||||
schema: newSchema,
|
schema: newSchema,
|
||||||
components,
|
components: renderer.components,
|
||||||
designMode: renderer.designMode,
|
designMode: renderer.designMode,
|
||||||
device: renderer.device,
|
device: renderer.device,
|
||||||
appHelper: renderer.context,
|
appHelper: renderer.context,
|
||||||
|
|||||||
@ -1,5 +1,6 @@
|
|||||||
import { BuiltinSimulatorHost, Node, PropChangeOptions } from '@ali/lowcode-designer';
|
import { BuiltinSimulatorHost, Node, PropChangeOptions } from '@ali/lowcode-designer';
|
||||||
import { GlobalEvent, TransformStage } from '@ali/lowcode-types';
|
import { GlobalEvent, TransformStage } from '@ali/lowcode-types';
|
||||||
|
import { isReactComponent } from '@ali/lowcode-utils';
|
||||||
import { EngineOptions } from '@ali/lowcode-editor-core';
|
import { EngineOptions } from '@ali/lowcode-editor-core';
|
||||||
import adapter from '../adapter';
|
import adapter from '../adapter';
|
||||||
import * as types from '../types/index';
|
import * as types from '../types/index';
|
||||||
@ -67,14 +68,21 @@ export function leafWrapper(Comp: types.IBaseRenderer, {
|
|||||||
const editor = host?.designer?.editor;
|
const editor = host?.designer?.editor;
|
||||||
const { Component } = adapter.getRuntime();
|
const { Component } = adapter.getRuntime();
|
||||||
|
|
||||||
/** 部分没有渲染的 node 节点进行兜底处理 or 渲染方式没有渲染 LeafWrapper */
|
if (!isReactComponent(Comp)) {
|
||||||
const leaf = getNode(schema.id);
|
console.error(`${schema.componentName} component may be has errors: `, Comp);
|
||||||
|
}
|
||||||
|
|
||||||
const wrapDisposeFunctions: Function[] = [
|
/** 部分没有渲染的 node 节点进行兜底处理 or 渲染方式没有渲染 LeafWrapper */
|
||||||
leaf?.onPropsChange?.(() => container.rerender()),
|
let wrapDisposeFunctions: Function[] = [];
|
||||||
leaf?.onChildrenChange?.(() => container.rerender()),
|
if (getNode) {
|
||||||
leaf?.onVisibleChange?.(() => container.rerender()),
|
const leaf = getNode(schema.id);
|
||||||
];
|
|
||||||
|
wrapDisposeFunctions = [
|
||||||
|
leaf?.onPropsChange?.(() => container.rerender()),
|
||||||
|
leaf?.onChildrenChange?.(() => container.rerender()),
|
||||||
|
leaf?.onVisibleChange?.(() => container.rerender()),
|
||||||
|
];
|
||||||
|
}
|
||||||
|
|
||||||
class LeafWrapper extends Component {
|
class LeafWrapper extends Component {
|
||||||
recordInfo: {
|
recordInfo: {
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user