jamis
Version:
一种支持通过JSON配置方式生成页面的组件库
42 lines (41 loc) • 1.31 kB
TypeScript
import type { RendererProps } from 'jamis-core';
import type { BaseSchema } from '../types';
export interface WujieSchema extends BaseSchema {
type: 'wujie';
/** 唯一性用户必须保证 */
name: string;
/** 需要渲染的url */
url: string;
/** 路由同步开关, false刷新无效,但是前进后退依然有效 */
sync?: boolean;
/** 子应用短路径替换,路由同步时生效 */
prefix?: {
[key: string]: string;
};
/** 子应用保活模式,state不会丢失 */
alive?: boolean;
/** 注入给子应用的数据 */
props?: {
[key: string]: any;
};
/** js采用fiber模式执行 */
fiber?: boolean;
/** 子应用采用降级iframe方案 */
degrade?: boolean;
/** 自定义运行iframe的属性 */
attrs?: {
[key: string]: any;
};
/** 自定义降级渲染iframe的属性 */
degradeAttrs?: {
[key: string]: any;
};
/** 代码替换钩子 */
replace?: (codeText: string) => string;
/** 自定义fetch,资源和接口 */
fetch?: (input: RequestInfo, init?: RequestInit) => Promise<Response>;
/** 子应插件 */
plugins?: Array<any>;
}
export interface WujieProps extends RendererProps, Omit<WujieSchema, 'type' | 'className' | 'data'> {
}