@hw-component/table 0.0.1-beta-v7 → 0.0.1-beta-v9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -7,6 +7,7 @@ interface HTableBodyProps extends Omit<ProTableProps<any, any>, "dataSource"> {
7
7
  onPageChange: (params: ParamsModal) => void;
8
8
  emptyRender?: (tableInstance: HTableInstance) => React.ReactNode;
9
9
  errorRender?: (tableInstance: HTableInstance, error: Error) => React.ReactNode;
10
+ tableStyle?: React.CSSProperties;
10
11
  }
11
- declare const _default: ({ loading, configData, pagination, onPageChange, rowSelection, rowKey, emptyRender, errorRender, ...props }: HTableBodyProps) => JSX.Element;
12
+ declare const _default: ({ loading, configData, pagination, onPageChange, rowSelection, rowKey, emptyRender, errorRender, tableStyle, ...props }: HTableBodyProps) => JSX.Element;
12
13
  export default _default;
package/es/Body/index.js CHANGED
@@ -18,7 +18,7 @@ import { useHTableContext } from '../context.js';
18
18
  import { ConfigProvider, Empty } from 'antd';
19
19
  import { useHTableConfigContext } from '../TableConfig.js';
20
20
 
21
- var _excluded = ["loading", "configData", "pagination", "onPageChange", "rowSelection", "rowKey", "emptyRender", "errorRender"];
21
+ var _excluded = ["loading", "configData", "pagination", "onPageChange", "rowSelection", "rowKey", "emptyRender", "errorRender", "tableStyle"];
22
22
  function ownKeys(e, r) { var t = _Object$keys(e); if (_Object$getOwnPropertySymbols) { var o = _Object$getOwnPropertySymbols(e); r && (o = _filterInstanceProperty(o).call(o, function (r) { return _Object$getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
23
23
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var _context, _context2; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty(_context = ownKeys(Object(t), !0)).call(_context, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(e, _Object$getOwnPropertyDescriptors(t)) : _forEachInstanceProperty(_context2 = ownKeys(Object(t))).call(_context2, function (r) { _Object$defineProperty(e, r, _Object$getOwnPropertyDescriptor(t, r)); }); } return e; }
24
24
  var defaultRender = function defaultRender() {
@@ -38,6 +38,7 @@ var Body = (function (_ref) {
38
38
  rowKey = _ref$rowKey === void 0 ? "id" : _ref$rowKey,
39
39
  emptyRender = _ref.emptyRender,
40
40
  errorRender = _ref.errorRender,
41
+ tableStyle = _ref.tableStyle,
41
42
  props = _objectWithoutProperties(_ref, _excluded);
42
43
  var selectedRowKeys = rowSelection.selectedRowKeys,
43
44
  onChange = rowSelection.onChange;
@@ -73,10 +74,10 @@ var Body = (function (_ref) {
73
74
  rowKey: rowKey
74
75
  });
75
76
  return jsx("div", {
76
- style: {
77
+ style: _objectSpread({
77
78
  borderRadius: 4,
78
79
  overflow: "hidden"
79
- },
80
+ }, tableStyle),
80
81
  children: jsx(ConfigProvider, {
81
82
  renderEmpty: function renderEmpty() {
82
83
  if (error) {
@@ -4,6 +4,7 @@ import type { HTableInstance, ResultModal, RowObj } from "../modal";
4
4
  interface IFooterProps {
5
5
  actionRender?: ActionRenderFn;
6
6
  footerRender?: (tableInstance: HTableInstance, selectedRowData: RowObj, data?: ResultModal) => React.ReactNode;
7
+ footerStyle?: React.CSSProperties;
7
8
  }
8
- declare const _default: ({ actionRender, footerRender }: IFooterProps) => JSX.Element;
9
+ declare const _default: ({ actionRender, footerRender, footerStyle }: IFooterProps) => JSX.Element;
9
10
  export default _default;
@@ -1,17 +1,29 @@
1
1
  // welcome to hoo hoo hoo
2
+ import _defineProperty from '@babel/runtime-corejs3/helpers/defineProperty';
2
3
  import _slicedToArray from '@babel/runtime-corejs3/helpers/slicedToArray';
3
4
  import _Number$parseInt from '@babel/runtime-corejs3/core-js/number/parse-int';
4
5
  import _Number$isNaN from '@babel/runtime-corejs3/core-js/number/is-nan';
6
+ import _Object$keys from '@babel/runtime-corejs3/core-js/object/keys';
7
+ import _Object$getOwnPropertySymbols from '@babel/runtime-corejs3/core-js/object/get-own-property-symbols';
8
+ import _filterInstanceProperty from '@babel/runtime-corejs3/core-js/instance/filter';
9
+ import _Object$getOwnPropertyDescriptor from '@babel/runtime-corejs3/core-js/object/get-own-property-descriptor';
10
+ import _forEachInstanceProperty from '@babel/runtime-corejs3/core-js/instance/for-each';
11
+ import _Object$getOwnPropertyDescriptors from '@babel/runtime-corejs3/core-js/object/get-own-property-descriptors';
12
+ import _Object$defineProperties from '@babel/runtime-corejs3/core-js/object/define-properties';
13
+ import _Object$defineProperty from '@babel/runtime-corejs3/core-js/object/define-property';
5
14
  import { jsx, Fragment, jsxs } from 'react/jsx-runtime';
6
15
  import { Typography, Card, Row, Space, Button, Affix } from 'antd';
7
16
  import { useHTableContext } from '../context.js';
8
17
  import { useState } from 'react';
9
18
 
19
+ function ownKeys(e, r) { var t = _Object$keys(e); if (_Object$getOwnPropertySymbols) { var o = _Object$getOwnPropertySymbols(e); r && (o = _filterInstanceProperty(o).call(o, function (r) { return _Object$getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
20
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var _context, _context2; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty(_context = ownKeys(Object(t), !0)).call(_context, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(e, _Object$getOwnPropertyDescriptors(t)) : _forEachInstanceProperty(_context2 = ownKeys(Object(t))).call(_context2, function (r) { _Object$defineProperty(e, r, _Object$getOwnPropertyDescriptor(t, r)); }); } return e; }
10
21
  var Text = Typography.Text,
11
22
  Link = Typography.Link;
12
23
  var Footer = (function (_ref) {
13
24
  var actionRender = _ref.actionRender,
14
- footerRender = _ref.footerRender;
25
+ footerRender = _ref.footerRender,
26
+ footerStyle = _ref.footerStyle;
15
27
  var _useHTableContext = useHTableContext(),
16
28
  data = _useHTableContext.data,
17
29
  selectedRowData = _useHTableContext.selectedRowData,
@@ -33,9 +45,9 @@ var Footer = (function (_ref) {
33
45
  });
34
46
  }
35
47
  var dom = jsx(Card, {
36
- style: {
48
+ style: _objectSpread({
37
49
  borderRadius: 4
38
- },
50
+ }, footerStyle),
39
51
  bordered: false,
40
52
  children: jsxs(Row, {
41
53
  justify: "space-between",
@@ -44,7 +56,7 @@ var Footer = (function (_ref) {
44
56
  children: [jsx(Button, {
45
57
  type: "primary",
46
58
  ghost: true,
47
- disabled: num == 0,
59
+ disabled: showTotalNum == 0,
48
60
  style: {
49
61
  padding: "4px 24px",
50
62
  borderRadius: "4px"
@@ -1,10 +1,12 @@
1
1
  import type { ColProps } from "antd";
2
2
  import type { ConfigDataModal } from "../modal";
3
+ import React from "react";
3
4
  interface IHeaderProps {
4
5
  configData: ConfigDataModal;
5
6
  onFinish: (value: Record<string, any>) => Promise<any>;
6
7
  searchSpan?: ColProps;
7
8
  loading?: boolean;
9
+ headerStyle?: React.CSSProperties;
8
10
  }
9
- declare const _default: ({ configData, onFinish, searchSpan, loading, }: IHeaderProps) => JSX.Element;
11
+ declare const _default: ({ configData, onFinish, searchSpan, loading, headerStyle }: IHeaderProps) => JSX.Element;
10
12
  export default _default;
@@ -1,4 +1,13 @@
1
1
  // welcome to hoo hoo hoo
2
+ import _Object$keys from '@babel/runtime-corejs3/core-js/object/keys';
3
+ import _Object$getOwnPropertySymbols from '@babel/runtime-corejs3/core-js/object/get-own-property-symbols';
4
+ import _filterInstanceProperty from '@babel/runtime-corejs3/core-js/instance/filter';
5
+ import _Object$getOwnPropertyDescriptor from '@babel/runtime-corejs3/core-js/object/get-own-property-descriptor';
6
+ import _forEachInstanceProperty from '@babel/runtime-corejs3/core-js/instance/for-each';
7
+ import _Object$getOwnPropertyDescriptors from '@babel/runtime-corejs3/core-js/object/get-own-property-descriptors';
8
+ import _Object$defineProperties from '@babel/runtime-corejs3/core-js/object/define-properties';
9
+ import _Object$defineProperty from '@babel/runtime-corejs3/core-js/object/define-property';
10
+ import _defineProperty from '@babel/runtime-corejs3/helpers/defineProperty';
2
11
  import { jsx } from 'react/jsx-runtime';
3
12
  import { Card } from 'antd';
4
13
  import { useHTableContext } from '../context.js';
@@ -6,6 +15,8 @@ import { HForm } from '@hw-component/form';
6
15
  import { useMemo } from 'react';
7
16
  import { formConfigDataProvider } from './utils.js';
8
17
 
18
+ function ownKeys(e, r) { var t = _Object$keys(e); if (_Object$getOwnPropertySymbols) { var o = _Object$getOwnPropertySymbols(e); r && (o = _filterInstanceProperty(o).call(o, function (r) { return _Object$getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
19
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var _context, _context2; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty(_context = ownKeys(Object(t), !0)).call(_context, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(e, _Object$getOwnPropertyDescriptors(t)) : _forEachInstanceProperty(_context2 = ownKeys(Object(t))).call(_context2, function (r) { _Object$defineProperty(e, r, _Object$getOwnPropertyDescriptor(t, r)); }); } return e; }
9
20
  var Header = (function (_ref) {
10
21
  var configData = _ref.configData,
11
22
  onFinish = _ref.onFinish,
@@ -13,7 +24,8 @@ var Header = (function (_ref) {
13
24
  searchSpan = _ref$searchSpan === void 0 ? {
14
25
  span: 6
15
26
  } : _ref$searchSpan,
16
- loading = _ref.loading;
27
+ loading = _ref.loading,
28
+ headerStyle = _ref.headerStyle;
17
29
  var _useHTableContext = useHTableContext(),
18
30
  tableInstance = _useHTableContext.tableInstance;
19
31
  var form = tableInstance.form;
@@ -21,9 +33,9 @@ var Header = (function (_ref) {
21
33
  return formConfigDataProvider(configData);
22
34
  }, [configData]);
23
35
  return jsx(Card, {
24
- style: {
36
+ style: _objectSpread({
25
37
  borderRadius: 4
26
- },
38
+ }, headerStyle),
27
39
  bordered: false,
28
40
  bodyStyle: {
29
41
  paddingBottom: 0
package/es/Table.d.ts CHANGED
@@ -1,3 +1,3 @@
1
1
  import type { HTableProps } from "./modal";
2
- declare const _default: ({ request, configData, searchSpan, table, actionRender, footerRender, hideHeader, ...props }: HTableProps) => JSX.Element;
2
+ declare const _default: ({ request, configData, searchSpan, table, actionRender, footerRender, hideHeader, headerStyle, footerStyle, tableStyle, action, spaceSize, ...props }: HTableProps) => JSX.Element;
3
3
  export default _default;
package/es/Table.js CHANGED
@@ -20,7 +20,7 @@ import useRowObj from './hooks/useRowObj.js';
20
20
  import { HTableContext } from './context.js';
21
21
  import { Space } from 'antd';
22
22
 
23
- var _excluded = ["request", "configData", "searchSpan", "table", "actionRender", "footerRender", "hideHeader"],
23
+ var _excluded = ["request", "configData", "searchSpan", "table", "actionRender", "footerRender", "hideHeader", "headerStyle", "footerStyle", "tableStyle", "action", "spaceSize"],
24
24
  _excluded2 = ["size", "current"];
25
25
  function ownKeys(e, r) { var t = _Object$keys(e); if (_Object$getOwnPropertySymbols) { var o = _Object$getOwnPropertySymbols(e); r && (o = _filterInstanceProperty(o).call(o, function (r) { return _Object$getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
26
26
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var _context, _context2; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty(_context = ownKeys(Object(t), !0)).call(_context, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(e, _Object$getOwnPropertyDescriptors(t)) : _forEachInstanceProperty(_context2 = ownKeys(Object(t))).call(_context2, function (r) { _Object$defineProperty(e, r, _Object$getOwnPropertyDescriptor(t, r)); }); } return e; }
@@ -32,6 +32,16 @@ var Table = (function (_ref) {
32
32
  actionRender = _ref.actionRender,
33
33
  footerRender = _ref.footerRender,
34
34
  hideHeader = _ref.hideHeader,
35
+ _ref$headerStyle = _ref.headerStyle,
36
+ headerStyle = _ref$headerStyle === void 0 ? {} : _ref$headerStyle,
37
+ _ref$footerStyle = _ref.footerStyle,
38
+ footerStyle = _ref$footerStyle === void 0 ? {} : _ref$footerStyle,
39
+ _ref$tableStyle = _ref.tableStyle,
40
+ tableStyle = _ref$tableStyle === void 0 ? {} : _ref$tableStyle,
41
+ _ref$action = _ref.action,
42
+ action = _ref$action === void 0 ? {} : _ref$action,
43
+ _ref$spaceSize = _ref.spaceSize,
44
+ spaceSize = _ref$spaceSize === void 0 ? 20 : _ref$spaceSize,
35
45
  props = _objectWithoutProperties(_ref, _excluded);
36
46
  var saveParams = useMemo(function () {
37
47
  return {
@@ -56,6 +66,10 @@ var Table = (function (_ref) {
56
66
  loading = _useRequest.loading,
57
67
  data = _useRequest.data,
58
68
  error = _useRequest.error;
69
+ var dispatch = function dispatch(key, params) {
70
+ var fn = action[key];
71
+ fn === null || fn === void 0 || fn(params);
72
+ };
59
73
  var _useRowObj = useRowObj(),
60
74
  selectedRowData = _useRowObj.selectedRowData,
61
75
  rowOnChange = _useRowObj.rowOnChange;
@@ -65,7 +79,8 @@ var Table = (function (_ref) {
65
79
  var reqParams = params || saveParams.params;
66
80
  run(_objectSpread({}, reqParams));
67
81
  },
68
- changeRowData: rowOnChange
82
+ changeRowData: rowOnChange,
83
+ dispatch: dispatch
69
84
  });
70
85
  return jsx(HTableContext.Provider, {
71
86
  value: {
@@ -76,7 +91,7 @@ var Table = (function (_ref) {
76
91
  error: error
77
92
  },
78
93
  children: jsxs(Space, {
79
- size: 20,
94
+ size: spaceSize,
80
95
  direction: "vertical",
81
96
  style: {
82
97
  width: "100%"
@@ -85,16 +100,19 @@ var Table = (function (_ref) {
85
100
  configData: configData,
86
101
  onFinish: run,
87
102
  loading: loading,
88
- searchSpan: searchSpan
103
+ searchSpan: searchSpan,
104
+ headerStyle: headerStyle
89
105
  }), jsx(Body, _objectSpread({
90
106
  loading: loading,
91
107
  configData: configData,
108
+ tableStyle: tableStyle,
92
109
  onPageChange: function onPageChange(page) {
93
110
  run(_objectSpread(_objectSpread({}, saveParams.params), page));
94
111
  }
95
112
  }, props)), footerRender !== false && jsx(Footer, {
96
113
  actionRender: actionRender,
97
- footerRender: footerRender
114
+ footerRender: footerRender,
115
+ footerStyle: footerStyle
98
116
  })]
99
117
  })
100
118
  });
@@ -4,6 +4,7 @@ interface currentTableParams {
4
4
  table?: HTableInstance;
5
5
  reload: (params?: ParamsModal) => void;
6
6
  changeRowData: (keys: React.Key[], data: any) => void;
7
+ dispatch: (key: string, params: any) => void;
7
8
  }
8
- declare const _default: ({ table, reload, changeRowData }: currentTableParams) => HTableInstance;
9
+ declare const _default: ({ table, reload, changeRowData, dispatch, }: currentTableParams) => HTableInstance;
9
10
  export default _default;
@@ -5,12 +5,14 @@ import useHTable from './useHTable.js';
5
5
  var useCurrentTable = (function (_ref) {
6
6
  var table = _ref.table,
7
7
  reload = _ref.reload,
8
- changeRowData = _ref.changeRowData;
8
+ changeRowData = _ref.changeRowData,
9
+ dispatch = _ref.dispatch;
9
10
  var useCurrentTable = useHTable();
10
11
  return useMemo(function () {
11
12
  var resultTable = table || useCurrentTable;
12
13
  resultTable.table.reload = reload;
13
14
  resultTable.table.setSelectedRowData = changeRowData;
15
+ resultTable.table.dispatch = dispatch;
14
16
  return resultTable;
15
17
  }, [table]);
16
18
  });
@@ -4,6 +4,7 @@ declare const _default: () => {
4
4
  table: {
5
5
  reload: (params?: ParamsModal) => ParamsModal | undefined;
6
6
  setSelectedRowData: () => void;
7
+ dispatch: () => void;
7
8
  };
8
9
  };
9
10
  export default _default;
@@ -9,7 +9,8 @@ var useHTable = (function () {
9
9
  reload: function reload(params) {
10
10
  return params;
11
11
  },
12
- setSelectedRowData: function setSelectedRowData() {}
12
+ setSelectedRowData: function setSelectedRowData() {},
13
+ dispatch: function dispatch() {}
13
14
  };
14
15
  }, []);
15
16
  return {
package/es/modal.d.ts CHANGED
@@ -26,6 +26,7 @@ interface HColumns extends Omit<ProColumns, "render"> {
26
26
  export type ConfigItemModal = Omit<HItemProps, "render" | "type"> & HColumns;
27
27
  export type ConfigDataModal = ConfigItemModal[];
28
28
  export type ActionRenderFn = (allCheck: boolean, selectedRowKeys: RowObj, tableInstance: HTableInstance) => React.ReactNode;
29
+ type actionFn = (...arg: any[]) => void;
29
30
  type FooterRenderFn = (tableInstance: HTableInstance, selectedRowData: RowObj, data?: ResultModal) => React.ReactNode;
30
31
  export interface HTableProps extends Omit<ProTableProps<any, any>, "request"> {
31
32
  request: (params: ParamsModal) => Promise<ResultModal>;
@@ -37,10 +38,16 @@ export interface HTableProps extends Omit<ProTableProps<any, any>, "request"> {
37
38
  errorRender?: (tableInstance: HTableInstance, error: Error) => React.ReactNode;
38
39
  footerRender?: FooterRenderFn | false;
39
40
  hideHeader?: boolean;
41
+ action?: Record<string, actionFn>;
42
+ headerStyle?: React.CSSProperties;
43
+ tableStyle?: React.CSSProperties;
44
+ footerStyle?: React.CSSProperties;
45
+ spaceSize?: number;
40
46
  }
41
47
  export interface TableInstance {
42
48
  reload: (params?: ParamsModal) => void;
43
49
  setSelectedRowData: (keys: React.Key[], data: any) => void;
50
+ dispatch: (key: string, params: any) => void;
44
51
  }
45
52
  export interface HTableInstance {
46
53
  form: HFormInstance;
@@ -7,6 +7,7 @@ interface HTableBodyProps extends Omit<ProTableProps<any, any>, "dataSource"> {
7
7
  onPageChange: (params: ParamsModal) => void;
8
8
  emptyRender?: (tableInstance: HTableInstance) => React.ReactNode;
9
9
  errorRender?: (tableInstance: HTableInstance, error: Error) => React.ReactNode;
10
+ tableStyle?: React.CSSProperties;
10
11
  }
11
- declare const _default: ({ loading, configData, pagination, onPageChange, rowSelection, rowKey, emptyRender, errorRender, ...props }: HTableBodyProps) => JSX.Element;
12
+ declare const _default: ({ loading, configData, pagination, onPageChange, rowSelection, rowKey, emptyRender, errorRender, tableStyle, ...props }: HTableBodyProps) => JSX.Element;
12
13
  export default _default;
package/lib/Body/index.js CHANGED
@@ -21,7 +21,7 @@ var context = require('../context.js');
21
21
  var antd = require('antd');
22
22
  var TableConfig = require('../TableConfig.js');
23
23
 
24
- var _excluded = ["loading", "configData", "pagination", "onPageChange", "rowSelection", "rowKey", "emptyRender", "errorRender"];
24
+ var _excluded = ["loading", "configData", "pagination", "onPageChange", "rowSelection", "rowKey", "emptyRender", "errorRender", "tableStyle"];
25
25
  function ownKeys(e, r) { var t = _Object$keys(e); if (_Object$getOwnPropertySymbols) { var o = _Object$getOwnPropertySymbols(e); r && (o = _filterInstanceProperty(o).call(o, function (r) { return _Object$getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
26
26
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var _context, _context2; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty(_context = ownKeys(Object(t), !0)).call(_context, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(e, _Object$getOwnPropertyDescriptors(t)) : _forEachInstanceProperty(_context2 = ownKeys(Object(t))).call(_context2, function (r) { _Object$defineProperty(e, r, _Object$getOwnPropertyDescriptor(t, r)); }); } return e; }
27
27
  var defaultRender = function defaultRender() {
@@ -41,6 +41,7 @@ var Body = (function (_ref) {
41
41
  rowKey = _ref$rowKey === void 0 ? "id" : _ref$rowKey,
42
42
  emptyRender = _ref.emptyRender,
43
43
  errorRender = _ref.errorRender,
44
+ tableStyle = _ref.tableStyle,
44
45
  props = _objectWithoutProperties(_ref, _excluded);
45
46
  var selectedRowKeys = rowSelection.selectedRowKeys,
46
47
  onChange = rowSelection.onChange;
@@ -76,10 +77,10 @@ var Body = (function (_ref) {
76
77
  rowKey: rowKey
77
78
  });
78
79
  return jsxRuntime.jsx("div", {
79
- style: {
80
+ style: _objectSpread({
80
81
  borderRadius: 4,
81
82
  overflow: "hidden"
82
- },
83
+ }, tableStyle),
83
84
  children: jsxRuntime.jsx(antd.ConfigProvider, {
84
85
  renderEmpty: function renderEmpty() {
85
86
  if (error) {
@@ -4,6 +4,7 @@ import type { HTableInstance, ResultModal, RowObj } from "../modal";
4
4
  interface IFooterProps {
5
5
  actionRender?: ActionRenderFn;
6
6
  footerRender?: (tableInstance: HTableInstance, selectedRowData: RowObj, data?: ResultModal) => React.ReactNode;
7
+ footerStyle?: React.CSSProperties;
7
8
  }
8
- declare const _default: ({ actionRender, footerRender }: IFooterProps) => JSX.Element;
9
+ declare const _default: ({ actionRender, footerRender, footerStyle }: IFooterProps) => JSX.Element;
9
10
  export default _default;
@@ -2,19 +2,31 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
+ var _defineProperty = require('@babel/runtime-corejs3/helpers/defineProperty');
5
6
  var _slicedToArray = require('@babel/runtime-corejs3/helpers/slicedToArray');
6
7
  var _Number$parseInt = require('@babel/runtime-corejs3/core-js/number/parse-int');
7
8
  var _Number$isNaN = require('@babel/runtime-corejs3/core-js/number/is-nan');
9
+ var _Object$keys = require('@babel/runtime-corejs3/core-js/object/keys');
10
+ var _Object$getOwnPropertySymbols = require('@babel/runtime-corejs3/core-js/object/get-own-property-symbols');
11
+ var _filterInstanceProperty = require('@babel/runtime-corejs3/core-js/instance/filter');
12
+ var _Object$getOwnPropertyDescriptor = require('@babel/runtime-corejs3/core-js/object/get-own-property-descriptor');
13
+ var _forEachInstanceProperty = require('@babel/runtime-corejs3/core-js/instance/for-each');
14
+ var _Object$getOwnPropertyDescriptors = require('@babel/runtime-corejs3/core-js/object/get-own-property-descriptors');
15
+ var _Object$defineProperties = require('@babel/runtime-corejs3/core-js/object/define-properties');
16
+ var _Object$defineProperty = require('@babel/runtime-corejs3/core-js/object/define-property');
8
17
  var jsxRuntime = require('react/jsx-runtime');
9
18
  var antd = require('antd');
10
19
  var context = require('../context.js');
11
20
  var React = require('react');
12
21
 
22
+ function ownKeys(e, r) { var t = _Object$keys(e); if (_Object$getOwnPropertySymbols) { var o = _Object$getOwnPropertySymbols(e); r && (o = _filterInstanceProperty(o).call(o, function (r) { return _Object$getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
23
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var _context, _context2; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty(_context = ownKeys(Object(t), !0)).call(_context, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(e, _Object$getOwnPropertyDescriptors(t)) : _forEachInstanceProperty(_context2 = ownKeys(Object(t))).call(_context2, function (r) { _Object$defineProperty(e, r, _Object$getOwnPropertyDescriptor(t, r)); }); } return e; }
13
24
  var Text = antd.Typography.Text,
14
25
  Link = antd.Typography.Link;
15
26
  var Footer = (function (_ref) {
16
27
  var actionRender = _ref.actionRender,
17
- footerRender = _ref.footerRender;
28
+ footerRender = _ref.footerRender,
29
+ footerStyle = _ref.footerStyle;
18
30
  var _useHTableContext = context.useHTableContext(),
19
31
  data = _useHTableContext.data,
20
32
  selectedRowData = _useHTableContext.selectedRowData,
@@ -36,9 +48,9 @@ var Footer = (function (_ref) {
36
48
  });
37
49
  }
38
50
  var dom = jsxRuntime.jsx(antd.Card, {
39
- style: {
51
+ style: _objectSpread({
40
52
  borderRadius: 4
41
- },
53
+ }, footerStyle),
42
54
  bordered: false,
43
55
  children: jsxRuntime.jsxs(antd.Row, {
44
56
  justify: "space-between",
@@ -47,7 +59,7 @@ var Footer = (function (_ref) {
47
59
  children: [jsxRuntime.jsx(antd.Button, {
48
60
  type: "primary",
49
61
  ghost: true,
50
- disabled: num == 0,
62
+ disabled: showTotalNum == 0,
51
63
  style: {
52
64
  padding: "4px 24px",
53
65
  borderRadius: "4px"
@@ -1,10 +1,12 @@
1
1
  import type { ColProps } from "antd";
2
2
  import type { ConfigDataModal } from "../modal";
3
+ import React from "react";
3
4
  interface IHeaderProps {
4
5
  configData: ConfigDataModal;
5
6
  onFinish: (value: Record<string, any>) => Promise<any>;
6
7
  searchSpan?: ColProps;
7
8
  loading?: boolean;
9
+ headerStyle?: React.CSSProperties;
8
10
  }
9
- declare const _default: ({ configData, onFinish, searchSpan, loading, }: IHeaderProps) => JSX.Element;
11
+ declare const _default: ({ configData, onFinish, searchSpan, loading, headerStyle }: IHeaderProps) => JSX.Element;
10
12
  export default _default;
@@ -2,6 +2,15 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
+ var _Object$keys = require('@babel/runtime-corejs3/core-js/object/keys');
6
+ var _Object$getOwnPropertySymbols = require('@babel/runtime-corejs3/core-js/object/get-own-property-symbols');
7
+ var _filterInstanceProperty = require('@babel/runtime-corejs3/core-js/instance/filter');
8
+ var _Object$getOwnPropertyDescriptor = require('@babel/runtime-corejs3/core-js/object/get-own-property-descriptor');
9
+ var _forEachInstanceProperty = require('@babel/runtime-corejs3/core-js/instance/for-each');
10
+ var _Object$getOwnPropertyDescriptors = require('@babel/runtime-corejs3/core-js/object/get-own-property-descriptors');
11
+ var _Object$defineProperties = require('@babel/runtime-corejs3/core-js/object/define-properties');
12
+ var _Object$defineProperty = require('@babel/runtime-corejs3/core-js/object/define-property');
13
+ var _defineProperty = require('@babel/runtime-corejs3/helpers/defineProperty');
5
14
  var jsxRuntime = require('react/jsx-runtime');
6
15
  var antd = require('antd');
7
16
  var context = require('../context.js');
@@ -9,6 +18,8 @@ var form = require('@hw-component/form');
9
18
  var React = require('react');
10
19
  var utils = require('./utils.js');
11
20
 
21
+ function ownKeys(e, r) { var t = _Object$keys(e); if (_Object$getOwnPropertySymbols) { var o = _Object$getOwnPropertySymbols(e); r && (o = _filterInstanceProperty(o).call(o, function (r) { return _Object$getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
22
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var _context, _context2; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty(_context = ownKeys(Object(t), !0)).call(_context, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(e, _Object$getOwnPropertyDescriptors(t)) : _forEachInstanceProperty(_context2 = ownKeys(Object(t))).call(_context2, function (r) { _Object$defineProperty(e, r, _Object$getOwnPropertyDescriptor(t, r)); }); } return e; }
12
23
  var Header = (function (_ref) {
13
24
  var configData = _ref.configData,
14
25
  onFinish = _ref.onFinish,
@@ -16,7 +27,8 @@ var Header = (function (_ref) {
16
27
  searchSpan = _ref$searchSpan === void 0 ? {
17
28
  span: 6
18
29
  } : _ref$searchSpan,
19
- loading = _ref.loading;
30
+ loading = _ref.loading,
31
+ headerStyle = _ref.headerStyle;
20
32
  var _useHTableContext = context.useHTableContext(),
21
33
  tableInstance = _useHTableContext.tableInstance;
22
34
  var form$1 = tableInstance.form;
@@ -24,9 +36,9 @@ var Header = (function (_ref) {
24
36
  return utils.formConfigDataProvider(configData);
25
37
  }, [configData]);
26
38
  return jsxRuntime.jsx(antd.Card, {
27
- style: {
39
+ style: _objectSpread({
28
40
  borderRadius: 4
29
- },
41
+ }, headerStyle),
30
42
  bordered: false,
31
43
  bodyStyle: {
32
44
  paddingBottom: 0
package/lib/Table.d.ts CHANGED
@@ -1,3 +1,3 @@
1
1
  import type { HTableProps } from "./modal";
2
- declare const _default: ({ request, configData, searchSpan, table, actionRender, footerRender, hideHeader, ...props }: HTableProps) => JSX.Element;
2
+ declare const _default: ({ request, configData, searchSpan, table, actionRender, footerRender, hideHeader, headerStyle, footerStyle, tableStyle, action, spaceSize, ...props }: HTableProps) => JSX.Element;
3
3
  export default _default;
package/lib/Table.js CHANGED
@@ -23,7 +23,7 @@ var useRowObj = require('./hooks/useRowObj.js');
23
23
  var context = require('./context.js');
24
24
  var antd = require('antd');
25
25
 
26
- var _excluded = ["request", "configData", "searchSpan", "table", "actionRender", "footerRender", "hideHeader"],
26
+ var _excluded = ["request", "configData", "searchSpan", "table", "actionRender", "footerRender", "hideHeader", "headerStyle", "footerStyle", "tableStyle", "action", "spaceSize"],
27
27
  _excluded2 = ["size", "current"];
28
28
  function ownKeys(e, r) { var t = _Object$keys(e); if (_Object$getOwnPropertySymbols) { var o = _Object$getOwnPropertySymbols(e); r && (o = _filterInstanceProperty(o).call(o, function (r) { return _Object$getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
29
29
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var _context, _context2; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty(_context = ownKeys(Object(t), !0)).call(_context, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(e, _Object$getOwnPropertyDescriptors(t)) : _forEachInstanceProperty(_context2 = ownKeys(Object(t))).call(_context2, function (r) { _Object$defineProperty(e, r, _Object$getOwnPropertyDescriptor(t, r)); }); } return e; }
@@ -35,6 +35,16 @@ var Table = (function (_ref) {
35
35
  actionRender = _ref.actionRender,
36
36
  footerRender = _ref.footerRender,
37
37
  hideHeader = _ref.hideHeader,
38
+ _ref$headerStyle = _ref.headerStyle,
39
+ headerStyle = _ref$headerStyle === void 0 ? {} : _ref$headerStyle,
40
+ _ref$footerStyle = _ref.footerStyle,
41
+ footerStyle = _ref$footerStyle === void 0 ? {} : _ref$footerStyle,
42
+ _ref$tableStyle = _ref.tableStyle,
43
+ tableStyle = _ref$tableStyle === void 0 ? {} : _ref$tableStyle,
44
+ _ref$action = _ref.action,
45
+ action = _ref$action === void 0 ? {} : _ref$action,
46
+ _ref$spaceSize = _ref.spaceSize,
47
+ spaceSize = _ref$spaceSize === void 0 ? 20 : _ref$spaceSize,
38
48
  props = _objectWithoutProperties(_ref, _excluded);
39
49
  var saveParams = React.useMemo(function () {
40
50
  return {
@@ -59,6 +69,10 @@ var Table = (function (_ref) {
59
69
  loading = _useRequest.loading,
60
70
  data = _useRequest.data,
61
71
  error = _useRequest.error;
72
+ var dispatch = function dispatch(key, params) {
73
+ var fn = action[key];
74
+ fn === null || fn === void 0 || fn(params);
75
+ };
62
76
  var _useRowObj = useRowObj.default(),
63
77
  selectedRowData = _useRowObj.selectedRowData,
64
78
  rowOnChange = _useRowObj.rowOnChange;
@@ -68,7 +82,8 @@ var Table = (function (_ref) {
68
82
  var reqParams = params || saveParams.params;
69
83
  run(_objectSpread({}, reqParams));
70
84
  },
71
- changeRowData: rowOnChange
85
+ changeRowData: rowOnChange,
86
+ dispatch: dispatch
72
87
  });
73
88
  return jsxRuntime.jsx(context.HTableContext.Provider, {
74
89
  value: {
@@ -79,7 +94,7 @@ var Table = (function (_ref) {
79
94
  error: error
80
95
  },
81
96
  children: jsxRuntime.jsxs(antd.Space, {
82
- size: 20,
97
+ size: spaceSize,
83
98
  direction: "vertical",
84
99
  style: {
85
100
  width: "100%"
@@ -88,16 +103,19 @@ var Table = (function (_ref) {
88
103
  configData: configData,
89
104
  onFinish: run,
90
105
  loading: loading,
91
- searchSpan: searchSpan
106
+ searchSpan: searchSpan,
107
+ headerStyle: headerStyle
92
108
  }), jsxRuntime.jsx(index$1.default, _objectSpread({
93
109
  loading: loading,
94
110
  configData: configData,
111
+ tableStyle: tableStyle,
95
112
  onPageChange: function onPageChange(page) {
96
113
  run(_objectSpread(_objectSpread({}, saveParams.params), page));
97
114
  }
98
115
  }, props)), footerRender !== false && jsxRuntime.jsx(index$2.default, {
99
116
  actionRender: actionRender,
100
- footerRender: footerRender
117
+ footerRender: footerRender,
118
+ footerStyle: footerStyle
101
119
  })]
102
120
  })
103
121
  });
@@ -4,6 +4,7 @@ interface currentTableParams {
4
4
  table?: HTableInstance;
5
5
  reload: (params?: ParamsModal) => void;
6
6
  changeRowData: (keys: React.Key[], data: any) => void;
7
+ dispatch: (key: string, params: any) => void;
7
8
  }
8
- declare const _default: ({ table, reload, changeRowData }: currentTableParams) => HTableInstance;
9
+ declare const _default: ({ table, reload, changeRowData, dispatch, }: currentTableParams) => HTableInstance;
9
10
  export default _default;
@@ -8,12 +8,14 @@ var useHTable = require('./useHTable.js');
8
8
  var useCurrentTable = (function (_ref) {
9
9
  var table = _ref.table,
10
10
  reload = _ref.reload,
11
- changeRowData = _ref.changeRowData;
11
+ changeRowData = _ref.changeRowData,
12
+ dispatch = _ref.dispatch;
12
13
  var useCurrentTable = useHTable.default();
13
14
  return React.useMemo(function () {
14
15
  var resultTable = table || useCurrentTable;
15
16
  resultTable.table.reload = reload;
16
17
  resultTable.table.setSelectedRowData = changeRowData;
18
+ resultTable.table.dispatch = dispatch;
17
19
  return resultTable;
18
20
  }, [table]);
19
21
  });
@@ -4,6 +4,7 @@ declare const _default: () => {
4
4
  table: {
5
5
  reload: (params?: ParamsModal) => ParamsModal | undefined;
6
6
  setSelectedRowData: () => void;
7
+ dispatch: () => void;
7
8
  };
8
9
  };
9
10
  export default _default;
@@ -12,7 +12,8 @@ var useHTable = (function () {
12
12
  reload: function reload(params) {
13
13
  return params;
14
14
  },
15
- setSelectedRowData: function setSelectedRowData() {}
15
+ setSelectedRowData: function setSelectedRowData() {},
16
+ dispatch: function dispatch() {}
16
17
  };
17
18
  }, []);
18
19
  return {
package/lib/modal.d.ts CHANGED
@@ -26,6 +26,7 @@ interface HColumns extends Omit<ProColumns, "render"> {
26
26
  export type ConfigItemModal = Omit<HItemProps, "render" | "type"> & HColumns;
27
27
  export type ConfigDataModal = ConfigItemModal[];
28
28
  export type ActionRenderFn = (allCheck: boolean, selectedRowKeys: RowObj, tableInstance: HTableInstance) => React.ReactNode;
29
+ type actionFn = (...arg: any[]) => void;
29
30
  type FooterRenderFn = (tableInstance: HTableInstance, selectedRowData: RowObj, data?: ResultModal) => React.ReactNode;
30
31
  export interface HTableProps extends Omit<ProTableProps<any, any>, "request"> {
31
32
  request: (params: ParamsModal) => Promise<ResultModal>;
@@ -37,10 +38,16 @@ export interface HTableProps extends Omit<ProTableProps<any, any>, "request"> {
37
38
  errorRender?: (tableInstance: HTableInstance, error: Error) => React.ReactNode;
38
39
  footerRender?: FooterRenderFn | false;
39
40
  hideHeader?: boolean;
41
+ action?: Record<string, actionFn>;
42
+ headerStyle?: React.CSSProperties;
43
+ tableStyle?: React.CSSProperties;
44
+ footerStyle?: React.CSSProperties;
45
+ spaceSize?: number;
40
46
  }
41
47
  export interface TableInstance {
42
48
  reload: (params?: ParamsModal) => void;
43
49
  setSelectedRowData: (keys: React.Key[], data: any) => void;
50
+ dispatch: (key: string, params: any) => void;
44
51
  }
45
52
  export interface HTableInstance {
46
53
  form: HFormInstance;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hw-component/table",
3
- "version": "0.0.1-beta-v7",
3
+ "version": "0.0.1-beta-v9",
4
4
  "description": "基于antd二次开发table组件",
5
5
  "keywords": [
6
6
  "table"
@@ -16,6 +16,7 @@ interface HTableBodyProps extends Omit<ProTableProps<any, any>, "dataSource"> {
16
16
  tableInstance: HTableInstance,
17
17
  error: Error
18
18
  ) => React.ReactNode;
19
+ tableStyle?:React.CSSProperties;
19
20
  }
20
21
  const defaultRender = () => {
21
22
  return <Empty image={Empty.PRESENTED_IMAGE_SIMPLE} />;
@@ -29,6 +30,7 @@ export default ({
29
30
  rowKey = "id",
30
31
  emptyRender,
31
32
  errorRender,
33
+ tableStyle,
32
34
  ...props
33
35
  }: HTableBodyProps) => {
34
36
  // @ts-ignore
@@ -49,7 +51,7 @@ export default ({
49
51
  };
50
52
  useSynchronousKeys({ selectedRowKeys, records, rowKey });
51
53
  return (
52
- <div style={{ borderRadius: 4, overflow: "hidden" }}>
54
+ <div style={{ borderRadius: 4, overflow: "hidden" ,...tableStyle}}>
53
55
  <ConfigProvider
54
56
  renderEmpty={() => {
55
57
  if (error) {
@@ -13,25 +13,27 @@ interface IFooterProps {
13
13
  selectedRowData: RowObj,
14
14
  data?: ResultModal
15
15
  ) => React.ReactNode;
16
+ footerStyle?:React.CSSProperties
17
+
16
18
  }
17
- export default ({ actionRender, footerRender }: IFooterProps) => {
18
- const { data, selectedRowData, tableInstance,error } = useHTableContext();
19
+ export default ({ actionRender, footerRender ,footerStyle}: IFooterProps) => {
20
+ const { data, selectedRowData, tableInstance, error } = useHTableContext();
19
21
  const [allCheck, setAllCheck] = useState<boolean>(false);
20
- const { total="0" } = data || {};
21
- const totalNum=Number.parseInt(total,10);
22
- const showTotalNum=Number.isNaN(totalNum)?0:totalNum;
23
- const num = allCheck ? showTotalNum:0;
22
+ const { total = "0" } = data || {};
23
+ const totalNum = Number.parseInt(total, 10);
24
+ const showTotalNum = Number.isNaN(totalNum) ? 0 : totalNum;
25
+ const num = allCheck ? showTotalNum : 0;
24
26
  if (footerRender) {
25
27
  return <>{footerRender(tableInstance, selectedRowData, data)}</>;
26
28
  }
27
29
  const dom = (
28
- <Card style={{ borderRadius: 4 }} bordered={false}>
30
+ <Card style={{ borderRadius: 4 ,...footerStyle}} bordered={false}>
29
31
  <Row justify="space-between">
30
32
  <Space size={20}>
31
33
  <Button
32
34
  type={"primary"}
33
35
  ghost
34
- disabled={num==0}
36
+ disabled={showTotalNum == 0}
35
37
  style={{ padding: "4px 24px", borderRadius: "4px" }}
36
38
  onClick={() => {
37
39
  setAllCheck(!allCheck);
@@ -3,7 +3,7 @@ import { Card } from "antd";
3
3
  import type { ConfigDataModal } from "../modal";
4
4
  import { useHTableContext } from "../context";
5
5
  import { HForm } from "@hw-component/form";
6
- import { useMemo } from "react";
6
+ import React, { useMemo } from "react";
7
7
  import { formConfigDataProvider } from "./utils";
8
8
  import type { HItemProps } from "@hw-component/form/lib/Form/modal";
9
9
 
@@ -12,6 +12,7 @@ interface IHeaderProps {
12
12
  onFinish: (value: Record<string, any>) => Promise<any>;
13
13
  searchSpan?: ColProps;
14
14
  loading?: boolean;
15
+ headerStyle?:React.CSSProperties
15
16
  }
16
17
 
17
18
  export default ({
@@ -19,6 +20,7 @@ export default ({
19
20
  onFinish,
20
21
  searchSpan = { span: 6 },
21
22
  loading,
23
+ headerStyle
22
24
  }: IHeaderProps) => {
23
25
  const { tableInstance } = useHTableContext();
24
26
  const { form } = tableInstance;
@@ -30,7 +32,7 @@ export default ({
30
32
 
31
33
  return (
32
34
  <Card
33
- style={{ borderRadius: 4 }}
35
+ style={{ borderRadius: 4 ,...headerStyle}}
34
36
  bordered={false}
35
37
  bodyStyle={{ paddingBottom: 0 }}
36
38
  >
@@ -16,6 +16,11 @@ export default ({
16
16
  actionRender,
17
17
  footerRender,
18
18
  hideHeader,
19
+ headerStyle={},
20
+ footerStyle={},
21
+ tableStyle={},
22
+ action = {},
23
+ spaceSize=20,
19
24
  ...props
20
25
  }: HTableProps) => {
21
26
  const saveParams = useMemo(() => {
@@ -29,6 +34,10 @@ export default ({
29
34
  saveParams.params = reqParams;
30
35
  return request(reqParams);
31
36
  });
37
+ const dispatch = (key: string, params: any) => {
38
+ const fn = action[key];
39
+ fn?.(params);
40
+ };
32
41
  const { selectedRowData, rowOnChange } = useRowObj();
33
42
  const tableInstance = useCurrentTable({
34
43
  table,
@@ -37,6 +46,7 @@ export default ({
37
46
  run({ ...reqParams });
38
47
  },
39
48
  changeRowData: rowOnChange,
49
+ dispatch,
40
50
  });
41
51
  return (
42
52
  <HTableContext.Provider
@@ -48,25 +58,27 @@ export default ({
48
58
  error,
49
59
  }}
50
60
  >
51
- <Space size={20} direction={"vertical"} style={{ width: "100%" }}>
61
+ <Space size={spaceSize} direction={"vertical"} style={{ width: "100%" }}>
52
62
  {!hideHeader && (
53
63
  <Header
54
64
  configData={configData}
55
65
  onFinish={run}
56
66
  loading={loading}
57
67
  searchSpan={searchSpan}
68
+ headerStyle={headerStyle}
58
69
  />
59
70
  )}
60
71
  <Body
61
72
  loading={loading}
62
73
  configData={configData}
74
+ tableStyle={tableStyle}
63
75
  onPageChange={(page) => {
64
76
  run({ ...saveParams.params, ...page });
65
77
  }}
66
78
  {...props}
67
79
  />
68
80
  {footerRender !== false && (
69
- <Footer actionRender={actionRender} footerRender={footerRender} />
81
+ <Footer actionRender={actionRender} footerRender={footerRender} footerStyle={footerStyle}/>
70
82
  )}
71
83
  </Space>
72
84
  </HTableContext.Provider>
@@ -7,13 +7,20 @@ interface currentTableParams {
7
7
  table?: HTableInstance;
8
8
  reload: (params?: ParamsModal) => void;
9
9
  changeRowData: (keys: React.Key[], data: any) => void;
10
+ dispatch: (key: string, params: any) => void;
10
11
  }
11
- export default ({ table, reload, changeRowData }: currentTableParams) => {
12
+ export default ({
13
+ table,
14
+ reload,
15
+ changeRowData,
16
+ dispatch,
17
+ }: currentTableParams) => {
12
18
  const useCurrentTable = useHTable();
13
19
  return useMemo(() => {
14
20
  const resultTable = table || useCurrentTable;
15
21
  resultTable.table.reload = reload;
16
22
  resultTable.table.setSelectedRowData = changeRowData;
23
+ resultTable.table.dispatch = dispatch;
17
24
  return resultTable;
18
25
  }, [table]);
19
26
  };
@@ -10,6 +10,7 @@ export default () => {
10
10
  return params;
11
11
  },
12
12
  setSelectedRowData: () => {},
13
+ dispatch: () => {},
13
14
  };
14
15
  }, []);
15
16
  return {
@@ -39,6 +39,7 @@ export type ActionRenderFn = (
39
39
  selectedRowKeys: RowObj,
40
40
  tableInstance: HTableInstance
41
41
  ) => React.ReactNode;
42
+ type actionFn = (...arg) => void;
42
43
  type FooterRenderFn = (
43
44
  tableInstance: HTableInstance,
44
45
  selectedRowData: RowObj,
@@ -57,10 +58,16 @@ export interface HTableProps extends Omit<ProTableProps<any, any>, "request"> {
57
58
  ) => React.ReactNode;
58
59
  footerRender?: FooterRenderFn | false;
59
60
  hideHeader?: boolean;
61
+ action?: Record<string, actionFn>;
62
+ headerStyle?:React.CSSProperties;
63
+ tableStyle?:React.CSSProperties;
64
+ footerStyle?:React.CSSProperties
65
+ spaceSize?:number;
60
66
  }
61
67
  export interface TableInstance {
62
68
  reload: (params?: ParamsModal) => void;
63
69
  setSelectedRowData: (keys: React.Key[], data: any) => void;
70
+ dispatch: (key: string, params: any) => void;
64
71
  }
65
72
  export interface HTableInstance {
66
73
  form: HFormInstance;
@@ -23,34 +23,36 @@ export default () => {
23
23
  hTable.table.reload();
24
24
  }}
25
25
  >
26
- {" "}
27
26
  点我
28
27
  </div>
29
28
  <HTable
30
29
  configData={configData}
31
30
  rowKey={"id"}
31
+ headerStyle={{borderRadius:0}}
32
+ tableStyle={{borderRadius:0,background:"#fff"}}
33
+ spaceSize={0}
34
+ footerStyle={{marginTop:20}}
32
35
  table={hTable}
33
36
  actionRender={(allCheck, selectedRowKeys, xjTable) => {
34
37
  console.log(allCheck, selectedRowKeys, xjTable);
35
38
  return <Button>点我</Button>;
36
39
  }}
37
- footerRender={false}
38
40
  request={(a) => {
39
41
  console.log(a);
40
42
  return new Promise((resolve, reject) => {
41
43
  setTimeout(() => {
42
- reject(new Error("错误"));
43
- // resolve({
44
- // size: "10",
45
- // current: "1",
46
- // total: "100",
47
- // records: [
48
- // {
49
- // id: 1,
50
- // name: "111",
51
- // },
52
- // ],
53
- // });
44
+ // reject(new Error("错误"));
45
+ resolve({
46
+ size: "10",
47
+ current: "1",
48
+ total: "100",
49
+ records: [
50
+ {
51
+ id: 1,
52
+ name: "111",
53
+ },
54
+ ],
55
+ });
54
56
  }, 2000);
55
57
  });
56
58
  }}