这种复杂的对象需要怎么定义它的 interface 了?

作者站长头像
站长
· 阅读数 13
const apiMaps: CascadeSelector =  {
  platformSiteShop: {
    api: userPlatformSiteShop, // api 返回的是 promise
    configuration: {
      children: 'children',
      label: 'label',
      value: 'value',
      childrenConfiguration: {
        label: 'label',
        value: 'value',
        children: 'children',
        childrenConfiguration: {
          label: 'label',
          value: 'value',
          children: 'children',
        },
      },
    },
  },
  buUser: {
    api: getBuUser,
    configuration: {
      children: 'list',
      label: 'buName',
      value: 'buId',
      childrenConfiguration: {
        label: 'operatorName',
        value: 'operatorId',
      },
    },
  },
  categoryTree: {
    api: categoryTree,
    configuration: {
      children: 'child',
      label: 'category',
      value: 'categoryId',
    },
    loop: true,
  },
}

CascadeSelector 改如何编写

回复
1个回答
avatar
test
2024-07-17
interface IConfiguration{
    label: string;
    value: string;
    children?: string;
    childrenConfiguration?:IConfiguration
}
interface IApi{
    api: Promise<any>;
    configuration: IConfiguration;
    loop?:boolean;
}
type CascadeSelector = Record<string, IApi>;
回复
likes
适合作为回答的
  • 经过验证的有效解决办法
  • 自己的经验指引,对解决问题有帮助
  • 遵循 Markdown 语法排版,代码语义正确
不该作为回答的
  • 询问内容细节或回复楼层
  • 与题目无关的内容
  • “赞”“顶”“同问”“看手册”“解决了没”等毫无意义的内容