# API
# registerMicroApps(apps, lifeCycles?, opts?)
Parameters
- apps -
Array<RegistrableApp<T>>- required, registration information for the child application - lifeCycles -
LifeCycles<T>- optional, global sub app lifecycle hooks - opts -
RegisterMicroAppsOpts- optional
- apps -
Type
RegistrableApp<T>name -
string- required, the name of the child application and must be unique between the child applications.entry -
string | { scripts?: string[]; styles?: string[]; html?: string }- required, The entry url of the child application.render -
(props?: { appContent: string; loading: boolean }) => any- required, the child application triggers the render method when it needs to be activated.activeRule -
(location: Location) => boolean- optional, activation rules for subapplications.This function is called when the browser url changes, and
activeRulereturnstrueto indicate that the subapplication needs to be activated.props -
object- optional, data that the primary application needs to pass to the child application.
LifeCycles<T>type Lifecycle<T extends object> = (app: RegistrableApp<T>) => Promise<any>;- beforeLoad -
Lifecycle<T> | Array<Lifecycle<T>>- optional - beforeMount -
Lifecycle<T> | Array<Lifecycle<T>>- optional - afterMount -
Lifecycle<T> | Array<Lifecycle<T>>- optional - beforeUnmount -
Lifecycle<T> | Array<Lifecycle<T>>- optional - afterUnmount -
Lifecycle<T> | Array<Lifecycle<T>>- optional
- beforeLoad -
RegisterMicroAppsOpts- fetch -
Function- optional - getPublicPath -
(url: string) => string- optional - getTemplate -
(tpl: string) => string- optional
- fetch -
Usage
Configuration information for registered subapplications in the main application.
Sample
import { registerMicroApps } from 'qiankun'; registerMicroApps( [{ name: 'app1', entry: '//localhost:8080', render: ({ appContent }) => ReactDOM.render(<App appContent={appContent}>, document.getElementById('container')), activeRule: location => location.pathname.startsWith('/react'), props: { name: 'kuitos', } }], { beforeLoad: app => console.log('before load', app.name), beforeMount: [ app => console.log('before mount', app.name), ], }, );
# start(opts?)
Parameters
- opts -
Optionsoptional
- opts -
Type
Optionsprefetch -
boolean | 'all' | string[] | (( apps: RegistrableApp[] ) => { mainAppStartingAppsName: string[]; firstMountedAppsName: string[] })- optional, whether to enable prefetch, default istrue.A configuration of
truestarts prefetching static resources for other subapplications after the first subapplication mount completes.If configured as
'all', the main applicationstartwill begin to preload all subapplication static resources.If configured as
string[], starts prefetching static resources for subapplications after the first subapplication mount completes which be declared in this list.If configured as
function, the timing of all subapplication static resources will be controlled by yourself.jsSandbox -
boolean- optional, whether to open the js sandbox, default istrue.singular -
boolean | ((app: RegistrableApp<any>) => Promise<boolean>);- optional,whether is a singular mode,default istrue.fetch -
Fetch- optional, customized fetch function.
Usage
Start qiankun.
Sample
import { start } from 'qiankun'; start();
# setDefaultMountApp(appLink)
Parameters
- appLink -
string- required
- appLink -
Usage
Sets the child application that enters by default after the main application starts.
Sample
import { setDefaultMountApp } from 'qiankun'; setDefaultMountApp('/homeApp');
# runAfterFirstMounted(effect)
Parameters
- effect -
() => void- required
- effect -
Usage
Methods that need to be called after the first subapplication mount, such as turning on some monitoring or buried scripts.
Sample
import { runAfterFirstMounted } from 'qiankun'; runAfterFirstMounted(() => startMonitor());
# addErrorHandler/removeErrorHandler
# addGlobalUncaughtErrorHandler(handler)
Parameters
- handler -
(...args: any[]) => void- 必选
- handler -
Usage
Add the global uncaught error hander.
Sample
import { addGlobalUncaughtErrorHandler } from 'qiankun'; addGlobalUncaughtErrorHandler(event => console.log(event));
# removeGlobalUncaughtErrorHandler(handler)
Parameters
- handler -
(...args: any[]) => void- 必选
- handler -
Usage
Remove the global uncaught error hander.
Sample
import { removeGlobalUncaughtErrorHandler } from 'qiankun'; removeGlobalUncaughtErrorHandler(handler);