@hw-component/table 0.0.1-beta-v4 → 0.0.1-beta-v6

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.
@@ -1,5 +1,7 @@
1
1
  // welcome to hoo hoo hoo
2
2
  import _slicedToArray from '@babel/runtime-corejs3/helpers/slicedToArray';
3
+ import _Number$parseInt from '@babel/runtime-corejs3/core-js/number/parse-int';
4
+ import _Number$isNaN from '@babel/runtime-corejs3/core-js/number/is-nan';
3
5
  import { jsx, Fragment, jsxs } from 'react/jsx-runtime';
4
6
  import { Typography, Card, Row, Space, Button, Affix } from 'antd';
5
7
  import { useHTableContext } from '../context.js';
@@ -14,13 +16,17 @@ var Footer = (function (_ref) {
14
16
  data = _useHTableContext.data,
15
17
  selectedRowData = _useHTableContext.selectedRowData,
16
18
  tableInstance = _useHTableContext.tableInstance;
19
+ _useHTableContext.error;
17
20
  var _useState = useState(false),
18
21
  _useState2 = _slicedToArray(_useState, 2),
19
22
  allCheck = _useState2[0],
20
23
  setAllCheck = _useState2[1];
21
24
  var _ref2 = data || {},
22
- total = _ref2.total;
23
- var num = allCheck ? total : 0;
25
+ _ref2$total = _ref2.total,
26
+ total = _ref2$total === void 0 ? "0" : _ref2$total;
27
+ var totalNum = _Number$parseInt(total, 10);
28
+ var showTotalNum = _Number$isNaN(totalNum) ? 0 : totalNum;
29
+ var num = allCheck ? showTotalNum : 0;
24
30
  if (footerRender) {
25
31
  return jsx(Fragment, {
26
32
  children: footerRender(tableInstance, selectedRowData, data)
@@ -38,6 +44,7 @@ var Footer = (function (_ref) {
38
44
  children: [jsx(Button, {
39
45
  type: "primary",
40
46
  ghost: true,
47
+ disabled: num == 0,
41
48
  style: {
42
49
  padding: "4px 24px",
43
50
  borderRadius: "4px"
@@ -4,6 +4,7 @@ interface IHeaderProps {
4
4
  configData: ConfigDataModal;
5
5
  onFinish: (value: Record<string, any>) => Promise<any>;
6
6
  searchSpan?: ColProps;
7
+ loading?: boolean;
7
8
  }
8
- declare const _default: ({ configData, onFinish, searchSpan, }: IHeaderProps) => JSX.Element;
9
+ declare const _default: ({ configData, onFinish, searchSpan, loading, }: IHeaderProps) => JSX.Element;
9
10
  export default _default;
@@ -12,7 +12,8 @@ var Header = (function (_ref) {
12
12
  _ref$searchSpan = _ref.searchSpan,
13
13
  searchSpan = _ref$searchSpan === void 0 ? {
14
14
  span: 6
15
- } : _ref$searchSpan;
15
+ } : _ref$searchSpan,
16
+ loading = _ref.loading;
16
17
  var _useHTableContext = useHTableContext(),
17
18
  tableInstance = _useHTableContext.tableInstance;
18
19
  var form = tableInstance.form;
@@ -29,7 +30,8 @@ var Header = (function (_ref) {
29
30
  },
30
31
  children: jsx(HForm, {
31
32
  itemSpan: searchSpan,
32
- request: onFinish,
33
+ onFinish: onFinish,
34
+ submitLoading: loading,
33
35
  gutter: [20, 0],
34
36
  hideLabel: true,
35
37
  configData: nConfigData,
package/es/Table.js CHANGED
@@ -61,8 +61,9 @@ var Table = (function (_ref) {
61
61
  rowOnChange = _useRowObj.rowOnChange;
62
62
  var tableInstance = useCurrentTable({
63
63
  table: table,
64
- reload: function reload() {
65
- run(_objectSpread({}, saveParams.params));
64
+ reload: function reload(params) {
65
+ var reqParams = params || saveParams.params;
66
+ run(_objectSpread({}, reqParams));
66
67
  },
67
68
  changeRowData: rowOnChange
68
69
  });
@@ -83,6 +84,7 @@ var Table = (function (_ref) {
83
84
  children: [!hideHeader && jsx(Header, {
84
85
  configData: configData,
85
86
  onFinish: run,
87
+ loading: loading,
86
88
  searchSpan: searchSpan
87
89
  }), jsx(Body, _objectSpread({
88
90
  loading: loading,
@@ -2,7 +2,7 @@ import type React from "react";
2
2
  import type { ParamsModal, HTableInstance } from "../modal";
3
3
  interface currentTableParams {
4
4
  table?: HTableInstance;
5
- reload: (params: ParamsModal) => void;
5
+ reload: (params?: ParamsModal) => void;
6
6
  changeRowData: (keys: React.Key[], data: any) => void;
7
7
  }
8
8
  declare const _default: ({ table, reload, changeRowData }: currentTableParams) => HTableInstance;
@@ -2,7 +2,7 @@ import type { ParamsModal } from "../modal";
2
2
  declare const _default: () => {
3
3
  form: import("@hw-component/form/lib/Form/modal").HFormInstance;
4
4
  table: {
5
- reload: (params: ParamsModal) => ParamsModal;
5
+ reload: (params?: ParamsModal) => ParamsModal | undefined;
6
6
  setSelectedRowData: () => void;
7
7
  };
8
8
  };
package/es/modal.d.ts CHANGED
@@ -39,7 +39,7 @@ export interface HTableProps extends Omit<ProTableProps<any, any>, "request"> {
39
39
  hideHeader?: boolean;
40
40
  }
41
41
  export interface TableInstance {
42
- reload: (params: ParamsModal) => void;
42
+ reload: (params?: ParamsModal) => void;
43
43
  setSelectedRowData: (keys: React.Key[], data: any) => void;
44
44
  }
45
45
  export interface HTableInstance {
@@ -3,6 +3,8 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var _slicedToArray = require('@babel/runtime-corejs3/helpers/slicedToArray');
6
+ var _Number$parseInt = require('@babel/runtime-corejs3/core-js/number/parse-int');
7
+ var _Number$isNaN = require('@babel/runtime-corejs3/core-js/number/is-nan');
6
8
  var jsxRuntime = require('react/jsx-runtime');
7
9
  var antd = require('antd');
8
10
  var context = require('../context.js');
@@ -17,13 +19,17 @@ var Footer = (function (_ref) {
17
19
  data = _useHTableContext.data,
18
20
  selectedRowData = _useHTableContext.selectedRowData,
19
21
  tableInstance = _useHTableContext.tableInstance;
22
+ _useHTableContext.error;
20
23
  var _useState = React.useState(false),
21
24
  _useState2 = _slicedToArray(_useState, 2),
22
25
  allCheck = _useState2[0],
23
26
  setAllCheck = _useState2[1];
24
27
  var _ref2 = data || {},
25
- total = _ref2.total;
26
- var num = allCheck ? total : 0;
28
+ _ref2$total = _ref2.total,
29
+ total = _ref2$total === void 0 ? "0" : _ref2$total;
30
+ var totalNum = _Number$parseInt(total, 10);
31
+ var showTotalNum = _Number$isNaN(totalNum) ? 0 : totalNum;
32
+ var num = allCheck ? showTotalNum : 0;
27
33
  if (footerRender) {
28
34
  return jsxRuntime.jsx(jsxRuntime.Fragment, {
29
35
  children: footerRender(tableInstance, selectedRowData, data)
@@ -41,6 +47,7 @@ var Footer = (function (_ref) {
41
47
  children: [jsxRuntime.jsx(antd.Button, {
42
48
  type: "primary",
43
49
  ghost: true,
50
+ disabled: num == 0,
44
51
  style: {
45
52
  padding: "4px 24px",
46
53
  borderRadius: "4px"
@@ -4,6 +4,7 @@ interface IHeaderProps {
4
4
  configData: ConfigDataModal;
5
5
  onFinish: (value: Record<string, any>) => Promise<any>;
6
6
  searchSpan?: ColProps;
7
+ loading?: boolean;
7
8
  }
8
- declare const _default: ({ configData, onFinish, searchSpan, }: IHeaderProps) => JSX.Element;
9
+ declare const _default: ({ configData, onFinish, searchSpan, loading, }: IHeaderProps) => JSX.Element;
9
10
  export default _default;
@@ -15,7 +15,8 @@ var Header = (function (_ref) {
15
15
  _ref$searchSpan = _ref.searchSpan,
16
16
  searchSpan = _ref$searchSpan === void 0 ? {
17
17
  span: 6
18
- } : _ref$searchSpan;
18
+ } : _ref$searchSpan,
19
+ loading = _ref.loading;
19
20
  var _useHTableContext = context.useHTableContext(),
20
21
  tableInstance = _useHTableContext.tableInstance;
21
22
  var form$1 = tableInstance.form;
@@ -32,7 +33,8 @@ var Header = (function (_ref) {
32
33
  },
33
34
  children: jsxRuntime.jsx(form.HForm, {
34
35
  itemSpan: searchSpan,
35
- request: onFinish,
36
+ onFinish: onFinish,
37
+ submitLoading: loading,
36
38
  gutter: [20, 0],
37
39
  hideLabel: true,
38
40
  configData: nConfigData,
package/lib/Table.js CHANGED
@@ -64,8 +64,9 @@ var Table = (function (_ref) {
64
64
  rowOnChange = _useRowObj.rowOnChange;
65
65
  var tableInstance = useCurrentTable.default({
66
66
  table: table,
67
- reload: function reload() {
68
- run(_objectSpread({}, saveParams.params));
67
+ reload: function reload(params) {
68
+ var reqParams = params || saveParams.params;
69
+ run(_objectSpread({}, reqParams));
69
70
  },
70
71
  changeRowData: rowOnChange
71
72
  });
@@ -86,6 +87,7 @@ var Table = (function (_ref) {
86
87
  children: [!hideHeader && jsxRuntime.jsx(index.default, {
87
88
  configData: configData,
88
89
  onFinish: run,
90
+ loading: loading,
89
91
  searchSpan: searchSpan
90
92
  }), jsxRuntime.jsx(index$1.default, _objectSpread({
91
93
  loading: loading,
@@ -2,7 +2,7 @@ import type React from "react";
2
2
  import type { ParamsModal, HTableInstance } from "../modal";
3
3
  interface currentTableParams {
4
4
  table?: HTableInstance;
5
- reload: (params: ParamsModal) => void;
5
+ reload: (params?: ParamsModal) => void;
6
6
  changeRowData: (keys: React.Key[], data: any) => void;
7
7
  }
8
8
  declare const _default: ({ table, reload, changeRowData }: currentTableParams) => HTableInstance;
@@ -2,7 +2,7 @@ import type { ParamsModal } from "../modal";
2
2
  declare const _default: () => {
3
3
  form: import("@hw-component/form/lib/Form/modal").HFormInstance;
4
4
  table: {
5
- reload: (params: ParamsModal) => ParamsModal;
5
+ reload: (params?: ParamsModal) => ParamsModal | undefined;
6
6
  setSelectedRowData: () => void;
7
7
  };
8
8
  };
package/lib/modal.d.ts CHANGED
@@ -39,7 +39,7 @@ export interface HTableProps extends Omit<ProTableProps<any, any>, "request"> {
39
39
  hideHeader?: boolean;
40
40
  }
41
41
  export interface TableInstance {
42
- reload: (params: ParamsModal) => void;
42
+ reload: (params?: ParamsModal) => void;
43
43
  setSelectedRowData: (keys: React.Key[], data: any) => void;
44
44
  }
45
45
  export interface HTableInstance {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hw-component/table",
3
- "version": "0.0.1-beta-v4",
3
+ "version": "0.0.1-beta-v6",
4
4
  "description": "基于antd二次开发table组件",
5
5
  "keywords": [
6
6
  "table"
@@ -31,7 +31,7 @@
31
31
  },
32
32
  "dependencies": {
33
33
  "@ant-design/pro-table": "2.70.0",
34
- "@hw-component/form": "0.0.9-beta-v7",
34
+ "@hw-component/form": "0.0.9-beta-v8",
35
35
  "ahooks": "2.10.9",
36
36
  "antd": "4.20.7",
37
37
  "core-js": "3",
@@ -15,10 +15,12 @@ interface IFooterProps {
15
15
  ) => React.ReactNode;
16
16
  }
17
17
  export default ({ actionRender, footerRender }: IFooterProps) => {
18
- const { data, selectedRowData, tableInstance } = useHTableContext();
18
+ const { data, selectedRowData, tableInstance,error } = useHTableContext();
19
19
  const [allCheck, setAllCheck] = useState<boolean>(false);
20
- const { total } = data || {};
21
- const num = allCheck ? total : 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;
22
24
  if (footerRender) {
23
25
  return <>{footerRender(tableInstance, selectedRowData, data)}</>;
24
26
  }
@@ -29,6 +31,7 @@ export default ({ actionRender, footerRender }: IFooterProps) => {
29
31
  <Button
30
32
  type={"primary"}
31
33
  ghost
34
+ disabled={num==0}
32
35
  style={{ padding: "4px 24px", borderRadius: "4px" }}
33
36
  onClick={() => {
34
37
  setAllCheck(!allCheck);
@@ -11,12 +11,14 @@ interface IHeaderProps {
11
11
  configData: ConfigDataModal;
12
12
  onFinish: (value: Record<string, any>) => Promise<any>;
13
13
  searchSpan?: ColProps;
14
+ loading?: boolean;
14
15
  }
15
16
 
16
17
  export default ({
17
18
  configData,
18
19
  onFinish,
19
20
  searchSpan = { span: 6 },
21
+ loading,
20
22
  }: IHeaderProps) => {
21
23
  const { tableInstance } = useHTableContext();
22
24
  const { form } = tableInstance;
@@ -34,7 +36,8 @@ export default ({
34
36
  >
35
37
  <HForm
36
38
  itemSpan={searchSpan}
37
- request={onFinish}
39
+ onFinish={onFinish}
40
+ submitLoading={loading}
38
41
  gutter={[20, 0]}
39
42
  hideLabel={true}
40
43
  configData={nConfigData}
@@ -32,8 +32,9 @@ export default ({
32
32
  const { selectedRowData, rowOnChange } = useRowObj();
33
33
  const tableInstance = useCurrentTable({
34
34
  table,
35
- reload: () => {
36
- run({ ...saveParams.params });
35
+ reload: (params) => {
36
+ const reqParams = params || saveParams.params;
37
+ run({ ...reqParams });
37
38
  },
38
39
  changeRowData: rowOnChange,
39
40
  });
@@ -52,6 +53,7 @@ export default ({
52
53
  <Header
53
54
  configData={configData}
54
55
  onFinish={run}
56
+ loading={loading}
55
57
  searchSpan={searchSpan}
56
58
  />
57
59
  )}
@@ -5,7 +5,7 @@ import useHTable from "../hooks/useHTable";
5
5
 
6
6
  interface currentTableParams {
7
7
  table?: HTableInstance;
8
- reload: (params: ParamsModal) => void;
8
+ reload: (params?: ParamsModal) => void;
9
9
  changeRowData: (keys: React.Key[], data: any) => void;
10
10
  }
11
11
  export default ({ table, reload, changeRowData }: currentTableParams) => {
@@ -6,7 +6,7 @@ export default () => {
6
6
  const form = useHForm();
7
7
  const table = useMemo(() => {
8
8
  return {
9
- reload: (params: ParamsModal) => {
9
+ reload: (params?: ParamsModal) => {
10
10
  return params;
11
11
  },
12
12
  setSelectedRowData: () => {},
@@ -59,7 +59,7 @@ export interface HTableProps extends Omit<ProTableProps<any, any>, "request"> {
59
59
  hideHeader?: boolean;
60
60
  }
61
61
  export interface TableInstance {
62
- reload: (params: ParamsModal) => void;
62
+ reload: (params?: ParamsModal) => void;
63
63
  setSelectedRowData: (keys: React.Key[], data: any) => void;
64
64
  }
65
65
  export interface HTableInstance {
@@ -1,4 +1,4 @@
1
- import { HTable, HTableConfig } from "../../components";
1
+ import { HTable, HTableConfig, useHTable } from "../../components";
2
2
  import { Button } from "antd";
3
3
  const configData = [
4
4
  {
@@ -15,45 +15,46 @@ const configData = [
15
15
  },
16
16
  ];
17
17
  export default () => {
18
+ const hTable = useHTable();
18
19
  return (
19
- <HTableConfig
20
- emptyRender={() => {
21
- return <div>红</div>;
22
- }}
23
- >
20
+ <>
21
+ <div
22
+ onClick={() => {
23
+ hTable.table.reload();
24
+ }}
25
+ >
26
+ {" "}
27
+ 点我
28
+ </div>
24
29
  <HTable
25
30
  configData={configData}
26
31
  rowKey={"id"}
27
- hideHeader={true}
28
- emptyRender={() => {
29
- return <div>无数据</div>;
30
- }}
31
- errorRender={(table, error) => {
32
- return <div>{error.message}</div>;
33
- }}
32
+ table={hTable}
34
33
  actionRender={(allCheck, selectedRowKeys, xjTable) => {
35
34
  console.log(allCheck, selectedRowKeys, xjTable);
36
35
  return <Button>点我</Button>;
37
36
  }}
38
37
  footerRender={false}
39
38
  request={(a) => {
39
+ console.log(a);
40
40
  return new Promise((resolve, reject) => {
41
41
  setTimeout(() => {
42
- resolve({
43
- size: "10",
44
- current: "1",
45
- total: "100",
46
- records: [
47
- {
48
- id: 1,
49
- name: "111",
50
- },
51
- ],
52
- });
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
+ // });
53
54
  }, 2000);
54
55
  });
55
56
  }}
56
57
  />
57
- </HTableConfig>
58
+ </>
58
59
  );
59
60
  };