# RecursionField (简易递归)

# 描述

递归渲染组件,主要基于JSON-Schema做递归渲染,它是SchemaField组件内部的核心渲染组件,当然,它是可以独立于 SchemaField 单独使用的,我们使用的时候主要是在自定义组件中使用,用于实现具有递归渲染能力的自定义组件

# 签名

interface IRecursionFieldProps {
  schema: Schema //schema对象
  name?: string //路径名称
  basePath?: FormPathPattern //基础路径
  onlyRenderProperties?: boolean //是否只渲染properties
  onlyRenderSelf?: boolean //是否只渲染自身,不渲染properties
  mapProperties?: (schema: Schema, name: string) => Schema //schema properties映射器,主要用于改写schema
  filterProperties?: (schema: Schema, name: string) => boolean //schema properties过滤器,被过滤掉的schema节点不会被渲染
}

type RecursionField = Vue.Component<IRecursionFieldProps>

# 用例

我们可以从组件属性中读取独立的 schema 对象,传给 RecursionField 渲染

Last Updated: 5/17/2021, 11:42:08 AM