UNPKG

@farris/renderer

Version:

Render schema to web page with farris ui.

59 lines (58 loc) 1.51 kB
import { Injector, Module } from "@farris/devkit-vue"; import { FormMetadataService } from "../service"; /** * 模型值解析器 */ export declare class ModelValueResolver { private formMetadataService; private module; private injector; /** * 模型值 * @summary * key = 组件ID; * value = 绑定值(字段值或表数据) */ private modelValue; /** * 构造函数 * @param formMetadataService 表单元数据服务 * @param module 模块实例 * @param injector 注入器 */ constructor(formMetadataService: FormMetadataService, module: Module, injector: Injector); /** * 解析模型 */ resolve(): Record<string, any>; /** * 解析组件 * @param viewSchema 组件配置 * @returns 递归解析组件及下级组件的绑定值 */ resolveModelValue(viewSchema: Record<string, any>): void; /** * 解析字段绑定 * @param viewSchema * @returns 绑定的字段值 */ resolveBindingValue(viewSchema: Record<string, any>): any | null; /** * 解析集合数据绑定 * @param viewSchema 组件配置 * @returns 绑定的集合数据 */ resolveDataSourceValue(viewSchema: Record<string, any>): any[] | null; /** * 实体仓库 */ private get entityStore(); /** * 实体元数据 */ private get entityMetadata(); /** * 实体元数据 */ private getEntityMetadata; }