diff --git a/packages/designer/src/builtin-simulator/create-simulator.ts b/packages/designer/src/builtin-simulator/create-simulator.ts index 686e61de1..0c74bd0f6 100644 --- a/packages/designer/src/builtin-simulator/create-simulator.ts +++ b/packages/designer/src/builtin-simulator/create-simulator.ts @@ -90,19 +90,8 @@ export function createSimulator( ${styleFrags} - -
-
-
${scriptFrags} `); diff --git a/packages/designer/src/project/project-view.tsx b/packages/designer/src/project/project-view.tsx index 2152513d9..e3f32f4e2 100644 --- a/packages/designer/src/project/project-view.tsx +++ b/packages/designer/src/project/project-view.tsx @@ -4,8 +4,26 @@ import { Designer } from '../designer'; import { BuiltinSimulatorHostView } from '../builtin-simulator'; import './project.less'; +class Loading extends Component { + render() { + return ( +
+ +
+ ); + } +} + @observer export class ProjectView extends Component<{ designer: Designer }> { + componentDidMount() { + const { designer } = this.props; + const { project } = designer; + + project.onRendererReady(() => { + this.forceUpdate(); + }); + } render() { const { designer } = this.props; const { project } = designer; @@ -15,6 +33,7 @@ export class ProjectView extends Component<{ designer: Designer }> { return (
+ {!project?.simulator?.renderer && }
diff --git a/packages/designer/src/project/project.less b/packages/designer/src/project/project.less index a83e983e2..1959f7ade 100644 --- a/packages/designer/src/project/project.less +++ b/packages/designer/src/project/project.less @@ -18,3 +18,10 @@ height: 100%; } } + +#engine-loading-wrapper { + display: flex; + justify-content: center; + align-items: center; + height: 90vh; +} diff --git a/packages/designer/src/simulator.ts b/packages/designer/src/simulator.ts index ee97dca95..36f77b279 100644 --- a/packages/designer/src/simulator.ts +++ b/packages/designer/src/simulator.ts @@ -1,6 +1,7 @@ import { Component as ReactComponent, ComponentType } from 'react'; import { ComponentMetadata, NodeSchema } from '@ali/lowcode-types'; import { ISensor, Point, ScrollTarget, IScrollable, LocateEvent, LocationData } from './designer'; +import { BuiltinSimulatorRenderer } from './builtin-simulator/renderer'; import { Node, ParentalNode } from './document'; export type AutoFit = '100%'; @@ -76,6 +77,7 @@ export interface ISimulatorHost

extends ISensor { readonly viewport: IViewport; readonly contentWindow?: Window; readonly contentDocument?: Document; + readonly renderer?: BuiltinSimulatorRenderer; // dependsAsset // like react jQuery lodash // themesAsset diff --git a/packages/editor-core/src/config.ts b/packages/editor-core/src/config.ts index e0b4686ff..7e0734ef8 100644 --- a/packages/editor-core/src/config.ts +++ b/packages/editor-core/src/config.ts @@ -46,11 +46,11 @@ export interface EngineOptions { /** * 禁止默认的设置面板,默认值:false */ - disableDefaultSettingPanel: boolean, + disableDefaultSettingPanel: boolean; /** * 禁止默认的设置器,默认值:false */ - disableDefaultSetters: boolean, + disableDefaultSetters: boolean; /** * Vision-polyfill settings */