props.d.ts 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. import { IBaseProps } from '../_util/base';
  2. export interface IGridItem {
  3. /**
  4. * @description 主文案
  5. */
  6. title: string;
  7. /**
  8. * @description 副文案
  9. */
  10. description?: string;
  11. /**
  12. * @description 图标
  13. */
  14. icon: string;
  15. /**
  16. * @desscription 图标样式
  17. * @default 'normal'
  18. */
  19. iconStyle: 'normal' | 'circle';
  20. }
  21. /**
  22. * @description 宫格
  23. */
  24. export interface IGridProps extends IBaseProps {
  25. /**
  26. * @desscription 图标样式
  27. * @default 'normal'
  28. */
  29. iconStyle: 'normal' | 'circle';
  30. /**
  31. * @description 图标尺寸,单位px
  32. */
  33. iconSize: number;
  34. /**
  35. * @description item布局。垂直/水平,水平仅columns=2生效
  36. * @default 'vertical'
  37. */
  38. gridItemLayout: 'vertical' | 'horizontal';
  39. /**
  40. * @description 组合形式
  41. * @default 'default'
  42. */
  43. mode: 'default' | 'scroll';
  44. /**
  45. * @description 每行展示的元素个数
  46. * @default 5
  47. */
  48. columns: number;
  49. /**
  50. * @description 元素列表
  51. */
  52. items: IGridItem[];
  53. /**
  54. * @description 是否展示分割线
  55. */
  56. showDivider: boolean;
  57. /**
  58. * @description 分页符背景色
  59. * @default '#ddd'
  60. */
  61. paginationFillColor: string;
  62. /**
  63. * @description 分页符颜色
  64. * @default '#1677ff'
  65. */
  66. paginationFrontColor: string;
  67. /**
  68. * @description 点击事件
  69. * @param item
  70. */
  71. onTap?(item: IGridItem): void;
  72. /**
  73. * @description 当前元素首次可见面积达到50%时触发
  74. * @param item
  75. */
  76. onFirstAppear?(item: IGridItem): void;
  77. }
  78. export declare const GridDefaultProps: Partial<IGridProps>;
  79. export declare const GridFunctionalProps: IGridProps;