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

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.
@@ -44,7 +44,7 @@ var Footer = (function (_ref) {
44
44
  children: [jsx(Button, {
45
45
  type: "primary",
46
46
  ghost: true,
47
- disabled: num == 0,
47
+ disabled: showTotalNum == 0,
48
48
  style: {
49
49
  padding: "4px 24px",
50
50
  borderRadius: "4px"
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, action, ...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", "action"],
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,8 @@ var Table = (function (_ref) {
32
32
  actionRender = _ref.actionRender,
33
33
  footerRender = _ref.footerRender,
34
34
  hideHeader = _ref.hideHeader,
35
+ _ref$action = _ref.action,
36
+ action = _ref$action === void 0 ? {} : _ref$action,
35
37
  props = _objectWithoutProperties(_ref, _excluded);
36
38
  var saveParams = useMemo(function () {
37
39
  return {
@@ -56,6 +58,10 @@ var Table = (function (_ref) {
56
58
  loading = _useRequest.loading,
57
59
  data = _useRequest.data,
58
60
  error = _useRequest.error;
61
+ var dispatch = function dispatch(key, params) {
62
+ var fn = action[key];
63
+ fn === null || fn === void 0 || fn(params);
64
+ };
59
65
  var _useRowObj = useRowObj(),
60
66
  selectedRowData = _useRowObj.selectedRowData,
61
67
  rowOnChange = _useRowObj.rowOnChange;
@@ -65,7 +71,8 @@ var Table = (function (_ref) {
65
71
  var reqParams = params || saveParams.params;
66
72
  run(_objectSpread({}, reqParams));
67
73
  },
68
- changeRowData: rowOnChange
74
+ changeRowData: rowOnChange,
75
+ dispatch: dispatch
69
76
  });
70
77
  return jsx(HTableContext.Provider, {
71
78
  value: {
@@ -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,12 @@ 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>;
40
42
  }
41
43
  export interface TableInstance {
42
44
  reload: (params?: ParamsModal) => void;
43
45
  setSelectedRowData: (keys: React.Key[], data: any) => void;
46
+ dispatch: (key: string, params: any) => void;
44
47
  }
45
48
  export interface HTableInstance {
46
49
  form: HFormInstance;
@@ -47,7 +47,7 @@ var Footer = (function (_ref) {
47
47
  children: [jsxRuntime.jsx(antd.Button, {
48
48
  type: "primary",
49
49
  ghost: true,
50
- disabled: num == 0,
50
+ disabled: showTotalNum == 0,
51
51
  style: {
52
52
  padding: "4px 24px",
53
53
  borderRadius: "4px"
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, action, ...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", "action"],
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,8 @@ var Table = (function (_ref) {
35
35
  actionRender = _ref.actionRender,
36
36
  footerRender = _ref.footerRender,
37
37
  hideHeader = _ref.hideHeader,
38
+ _ref$action = _ref.action,
39
+ action = _ref$action === void 0 ? {} : _ref$action,
38
40
  props = _objectWithoutProperties(_ref, _excluded);
39
41
  var saveParams = React.useMemo(function () {
40
42
  return {
@@ -59,6 +61,10 @@ var Table = (function (_ref) {
59
61
  loading = _useRequest.loading,
60
62
  data = _useRequest.data,
61
63
  error = _useRequest.error;
64
+ var dispatch = function dispatch(key, params) {
65
+ var fn = action[key];
66
+ fn === null || fn === void 0 || fn(params);
67
+ };
62
68
  var _useRowObj = useRowObj.default(),
63
69
  selectedRowData = _useRowObj.selectedRowData,
64
70
  rowOnChange = _useRowObj.rowOnChange;
@@ -68,7 +74,8 @@ var Table = (function (_ref) {
68
74
  var reqParams = params || saveParams.params;
69
75
  run(_objectSpread({}, reqParams));
70
76
  },
71
- changeRowData: rowOnChange
77
+ changeRowData: rowOnChange,
78
+ dispatch: dispatch
72
79
  });
73
80
  return jsxRuntime.jsx(context.HTableContext.Provider, {
74
81
  value: {
@@ -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,12 @@ 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>;
40
42
  }
41
43
  export interface TableInstance {
42
44
  reload: (params?: ParamsModal) => void;
43
45
  setSelectedRowData: (keys: React.Key[], data: any) => void;
46
+ dispatch: (key: string, params: any) => void;
44
47
  }
45
48
  export interface HTableInstance {
46
49
  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-v8",
4
4
  "description": "基于antd二次开发table组件",
5
5
  "keywords": [
6
6
  "table"
@@ -15,12 +15,12 @@ interface IFooterProps {
15
15
  ) => React.ReactNode;
16
16
  }
17
17
  export default ({ actionRender, footerRender }: IFooterProps) => {
18
- const { data, selectedRowData, tableInstance,error } = useHTableContext();
18
+ const { data, selectedRowData, tableInstance, error } = useHTableContext();
19
19
  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;
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;
24
24
  if (footerRender) {
25
25
  return <>{footerRender(tableInstance, selectedRowData, data)}</>;
26
26
  }
@@ -31,7 +31,7 @@ export default ({ actionRender, footerRender }: IFooterProps) => {
31
31
  <Button
32
32
  type={"primary"}
33
33
  ghost
34
- disabled={num==0}
34
+ disabled={showTotalNum == 0}
35
35
  style={{ padding: "4px 24px", borderRadius: "4px" }}
36
36
  onClick={() => {
37
37
  setAllCheck(!allCheck);
@@ -16,6 +16,7 @@ export default ({
16
16
  actionRender,
17
17
  footerRender,
18
18
  hideHeader,
19
+ action = {},
19
20
  ...props
20
21
  }: HTableProps) => {
21
22
  const saveParams = useMemo(() => {
@@ -29,6 +30,10 @@ export default ({
29
30
  saveParams.params = reqParams;
30
31
  return request(reqParams);
31
32
  });
33
+ const dispatch = (key: string, params: any) => {
34
+ const fn = action[key];
35
+ fn?.(params);
36
+ };
32
37
  const { selectedRowData, rowOnChange } = useRowObj();
33
38
  const tableInstance = useCurrentTable({
34
39
  table,
@@ -37,6 +42,7 @@ export default ({
37
42
  run({ ...reqParams });
38
43
  },
39
44
  changeRowData: rowOnChange,
45
+ dispatch,
40
46
  });
41
47
  return (
42
48
  <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,12 @@ 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>;
60
62
  }
61
63
  export interface TableInstance {
62
64
  reload: (params?: ParamsModal) => void;
63
65
  setSelectedRowData: (keys: React.Key[], data: any) => void;
66
+ dispatch: (key: string, params: any) => void;
64
67
  }
65
68
  export interface HTableInstance {
66
69
  form: HFormInstance;
@@ -23,7 +23,6 @@ export default () => {
23
23
  hTable.table.reload();
24
24
  }}
25
25
  >
26
- {" "}
27
26
  点我
28
27
  </div>
29
28
  <HTable
@@ -34,23 +33,22 @@ export default () => {
34
33
  console.log(allCheck, selectedRowKeys, xjTable);
35
34
  return <Button>点我</Button>;
36
35
  }}
37
- footerRender={false}
38
36
  request={(a) => {
39
37
  console.log(a);
40
38
  return new Promise((resolve, reject) => {
41
39
  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
- // });
40
+ // reject(new Error("错误"));
41
+ resolve({
42
+ size: "10",
43
+ current: "1",
44
+ total: "100",
45
+ records: [
46
+ {
47
+ id: 1,
48
+ name: "111",
49
+ },
50
+ ],
51
+ });
54
52
  }, 2000);
55
53
  });
56
54
  }}