import React from 'react';
import Button from 'antd/lib/button';
import {
registerRemotes,
loadRemote,
createRemoteSSRComponent,
} from '@modern-js/runtime/mf';
import stuff from './stuff.module.css';
registerRemotes([
{
name: 'dynamic_remote',
entry: 'http://localhost:3053/mf-manifest.json',
},
]);
const RemoteSSRComponent = createRemoteSSRComponent({
loader: () => loadRemote('dynamic_remote/Image'),
loading: 'loading...',
fallback: ({ error }) => {
if (error instanceof Error && error.message.includes('not exist')) {
return
fallback - not existed id
;
}
return fallback
;
},
});
const LazyButton2 = React.lazy(() =>
import('./Button2').then((m) => {
return new Promise((resolve) => {
setTimeout(() => resolve(m), 2000);
});
}),
);
const LazyButton1 = React.lazy(() =>
import('./Button').then((m) => {
return new Promise((resolve) => {
setTimeout(() => resolve(m), 1000);
});
}),
);
export default (): JSX.Element => (
dynamic nested remote
);