chore: optimize

This commit is contained in:
wuyue.xht 2020-03-29 23:08:03 +08:00
parent 2e4526667d
commit 00ee9c2af4
4 changed files with 12 additions and 15 deletions

View File

@ -1,17 +1,17 @@
import { run, Boot } from '@ali/lowcode-runtime'; import { boot, run } from '@ali/lowcode-runtime';
import Renderer from '@ali/lowcode-react-renderer'; import Renderer from '@ali/lowcode-react-renderer';
import FusionLoading from './preview/plugins/loading/fusion'; import FusionLoading from './preview/plugins/loading/fusion';
import BasicLayout from './preview/layouts/BasicLayout'; import BasicLayout from './preview/layouts/BasicLayout';
import provider from './preview/plugins/provider'; import provider from './preview/plugins/provider';
// 注册渲染模块 // 注册渲染模块
Boot.registerRenderer(Renderer); boot.registerRenderer(Renderer);
// 注册布局组件,可注册多个 // 注册布局组件,可注册多个
Boot.registerLayout('BasicLayout', BasicLayout); boot.registerLayout('BasicLayout', BasicLayout);
// 注册页面 loading // 注册页面 Loading
Boot.registerLoading(FusionLoading); boot.registerLoading(FusionLoading);
const appProvider = provider.create('lowcode_demo'); // 入参为应用唯一标识 const appProvider = provider.create('lowcode_demo'); // 入参为应用唯一标识

View File

@ -1,5 +1,5 @@
import { createElement } from 'react'; import { createElement } from 'react';
import { Provider, Boot, Router, navigator } from '@ali/lowcode-runtime'; import { Provider, boot, Router } from '@ali/lowcode-runtime';
import appConfig from '../config/app'; import appConfig from '../config/app';
import builtInComps from '../config/components'; import builtInComps from '../config/components';
import componentsMap from '../config/componentsMap'; import componentsMap from '../config/componentsMap';
@ -94,16 +94,13 @@ class PreviewProvider extends Provider {
return App; return App;
} }
const { componentName: layoutName, props: layoutProps } = this.layout as any; const { componentName: layoutName, props: layoutProps } = this.layout as any;
const Layout = Boot.getLayout(layoutName); const Layout = boot.getLayout(layoutName);
if (Layout) { if (Layout) {
App = (props: any) => App = (props: any) =>
createElement( createElement(
Layout, Layout,
{ {
...layoutProps, ...layoutProps,
onNavChange: ({ selectedKey }: any) => {
navigator.goto(`/${selectedKey}`);
},
}, },
RouterView({ props }), RouterView({ props }),
); );

View File

@ -1,5 +1,5 @@
import { navigator, Router, runApp as run } from '@ali/recore'; import { navigator, Router, runApp as run } from '@ali/recore';
import Boot from './boot'; import boot from './boot';
import Provider from './provider'; import Provider from './provider';
export { run, Router, Boot, Provider, navigator }; export { run, Router, boot, Provider, navigator };

View File

@ -1,5 +1,5 @@
import { Component, createElement } from 'react'; import { Component, createElement } from 'react';
import Boot from './boot'; import boot from './boot';
interface IProps { interface IProps {
getPageData: () => any; getPageData: () => any;
@ -29,8 +29,8 @@ export default class LazyComponent extends Component<IProps, IState> {
render() { render() {
const { getPageData, ...restProps } = this.props; const { getPageData, ...restProps } = this.props;
const { schema } = this.state; const { schema } = this.state;
const Renderer = Boot.getRenderer(); const Renderer = boot.getRenderer();
const Loading = Boot.getLoading(); const Loading = boot.getLoading();
if (!Renderer || !schema) { if (!Renderer || !schema) {
if (!Loading) { if (!Loading) {
return null; return null;