defineAsyncComponent()
定义一个仅在渲染时才延迟加载的异步组件。参数可以是加载器函数,也可以是用于更高级控制加载行为的选项对象。
类型
function defineAsyncComponent( source: AsyncComponentLoader | AsyncComponentOptions ): Component type AsyncComponentLoader = () => Promise<Component> interface AsyncComponentOptions { // 工厂函数 loader: AsyncComponentLoader // 加载异步组件时要使用的组件 loadingComponent?: Component // 加载失败时要使用的组件 errorComponent?: Component // 在显示 loadingComponent 之前的延迟 | 默认值:200(单位 ms) delay?: number // 默认值:Infinity(即永不超时,单位 ms) timeout?: number // 定义组件是否可挂起 | 默认值:true suspensible?: boolean /** * * @param {*} error 错误信息对象 * @param {*} retry 一个函数,用于指示当 promise 加载器 reject 时,加载器是否应该重试 * @param {*} fail 一个函数,指示加载程序结束退出 * @param {*} attempts 允许的最大重试次数 */ onError?: ( error: Error, retry: () => void, fail: () => void, attempts: number ) => any }