应用菜单
菜单是网站导航的核心组件,用于组织并展示站点层级结构,提供快速访问路径。其中PC端菜单通常包含水平/垂直布局、多级下拉、高亮交互等功能,移动端菜单则是在页面底部进行平铺展示,支持高亮交互,折叠收缩多余菜单项等功能。
示例效果
输入参数
名称 | 说明 | 类型 | 默认值 |
---|---|---|---|
modelData | 菜单模型数据 | Object as IAppMenu | - |
context | 应用上下文对象 | Object as IContext | - |
params | 视图参数对象 | Object as IParams | {} |
provider | 部件适配器 | Object as IControlProvider | - |
collapse | 是否折叠 | Boolean | - |
currentPath | 当前路径(已弃用) | String | - |
状态
名称 | 说明 | 类型 | 默认值 |
---|---|---|---|
isCreated | 控制器是否走完created生命周期 | boolean | false |
isMounted | 控制器是否走完mounted生命周期 | boolean | false |
isDestroyed | 控制器是否走完destroy生命周期 | boolean | false |
context | 应用上下文对象 | IApiContext | {} |
activated | 当前部件是否为激活状态(缓存下的激活状态,一般与框架的生命周期相同) | boolean | false |
isSimple | 是否是简单模式,简单模式下不加载数据,而是由父组件传值 | boolean | false |
isLoading | 部件是否正在加载 | boolean | false |
loadDefault | 是否默认加载数据 | boolean | true |
disabled | 部件禁用状态 | boolean | false |
maskOption | 部件遮罩参数 | IApiMaskOption | - |
menuItemsState | 菜单项状态 | { [p: string]: { visible: boolean; permitted: boolean } } | {} |
mobMenuItems | 移动端菜单项集合 | IAppMenuItem[] | [] |
控制器
名称 | 说明 | 类型 |
---|---|---|
id | 控制器实例的唯一标识,创建时自动生成 | string |
state | 状态对象,泛型 | S |
model | 模型对象,泛型 | T |
context | 应用上下文对象 | IApiContext |
params | 视图参数对象 | IApiParams |
view | 当前视图控制器 | IApiViewController & IApiData |
ctrlId | 部件标识 | string |
controlParams | 部件参数 | IApiParams |
layoutPanel | 部件布局面板控制器 | IApiViewLayoutPanelController & IApiData |
runMode | 运行模式(DESIGN:设计模式,RUNTIME:运行时) | 'DESIGN' | 'RUNTIME' |
allAppMenuItems | 所有菜单项 | IAppMenuItem[] |
force | 强制更新,触发render函数 | (_callback?: () => void) => void |
startLoading | 开始加载 | () => Promise<void> |
endLoading | 加载完毕 | () => Promise<void> |
getControlType | 获取部件类型 | () => string |
enable | 取消部件禁用 | () => void |
disabled | 设置部件禁用 | (options?: IApiMaskOption) => void |
emitDEDataChange | 触发实体数据变更的通知 | (type: 'create' | 'update' | 'remove', data: IApiData) => void |
getDefaultOpenView | 获取菜单默认打开视图 | () => string | undefined |
事件
名称 | 描述 | 类型 |
---|---|---|
onCreated | 自身的准备工作完成(如模型加载,各种初始化,init结束) | {eventName:string, context:IApiContext, params:IApiParams, data:IApiData[], targetName:string, view:IApiViewController, ctrl:IApiControlController, [key: string]: any} |
onMounted | 没有下级组件created之后的生命周期,有下级时需要等所有下级组件onMounted完成后触发 | {eventName:string, context:IApiContext, params:IApiParams, data:IApiData[], targetName:string, view:IApiViewController, ctrl:IApiControlController, [key: string]: any} |
onBeforeDestroy | 组件销毁前 | {eventName:string, context:IApiContext, params:IApiParams, data:IApiData[], targetName:string, view:IApiViewController, ctrl:IApiControlController, [key: string]: any} |
onDestroyed | 自身组件被销毁时触发 | {eventName:string, context:IApiContext, params:IApiParams, data:IApiData[], targetName:string, view:IApiViewController, ctrl:IApiControlController, [key: string]: any} |
onActivated | 自身组件重新激活 | {eventName:string, context:IApiContext, params:IApiParams, data:IApiData[], targetName:string, view:IApiViewController, ctrl:IApiControlController, [key: string]: any} |
onDeactivated | 自身组件暂时停用 | {eventName:string, context:IApiContext, params:IApiParams, data:IApiData[], targetName:string, view:IApiViewController, ctrl:IApiControlController, [key: string]: any} |
onUIAction | 界面行为执行 | {eventName:string, context:IApiContext, params:IApiParams, data:IApiData[], targetName:string, view:IApiViewController, ctrl:IApiControlController, [key: string]: any} |
onRefreshSuccess | 刷新成功 | {eventName:string, context:IApiContext, params:IApiParams, data:IApiData[], targetName:string, view:IApiViewController, ctrl:IApiControlController, [key: string]: any} |
onClick | 菜单点击事件 | {eventName:string, context:IApiContext, params:IApiParams, data:IApiData[], targetName:string, view:IApiViewController, ctrl:IApiControlController, [key: string]: any} |
控件动态参数
暂无内容