Files
react/components/table/table-context.ts
2020-04-01 06:45:01 +08:00

22 lines
504 B
TypeScript

import React from 'react'
export type TableColumnItem = {
value: string
label: React.ReactNode | string
width?: number
}
export interface TableConfig {
columns: Array<TableColumnItem>
appendColumn?: (column: TableColumnItem) => void
removeRow?: (rowIndex: number) => void
}
const defaultContext = {
columns: [],
}
export const TableContext = React.createContext<TableConfig>(defaultContext)
export const useTableContext = (): TableConfig => React.useContext<TableConfig>(TableContext)