UNPKG

@aliretail/react-link-selector

Version:
126 lines (103 loc) 4.46 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports["default"] = Detail; var _pagination = _interopRequireDefault(require("@alifd/next/lib/pagination")); var _table = _interopRequireDefault(require("@alifd/next/lib/table")); var _search = _interopRequireDefault(require("@alifd/next/lib/search")); var _react = _interopRequireWildcard(require("react")); var _reactUniversalRequest = _interopRequireDefault(require("@aliretail/react-universal-request")); var _api = _interopRequireDefault(require("../api")); var _data = require("./data"); require("./index.scss"); function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } var PAGESIZE = 20; function Detail(props) { var buildValue = function buildValue(val) { return val; }; var _useState = (0, _react.useState)([]), data = _useState[0], setData = _useState[1]; var _useState2 = (0, _react.useState)(buildValue(props.value)), value = _useState2[0], setValue = _useState2[1]; var _useState3 = (0, _react.useState)(0), start = _useState3[0], setStart = _useState3[1]; var _useState4 = (0, _react.useState)(''), searchKeyword = _useState4[0], setSearchKeyword = _useState4[1]; var _useState5 = (0, _react.useState)(0), total = _useState5[0], setTotal = _useState5[1]; var queryData = function queryData() { (0, _reactUniversalRequest["default"])({ url: _api["default"].detail, method: 'POST', data: { start: start, limit: PAGESIZE, pageName: searchKeyword } }).then(function (json) { setTotal(json.result.totalElements); setData(json.result); }); }; (0, _react.useEffect)(function () { queryData(); }, []); (0, _react.useEffect)(function () { setValue(buildValue(props.value)); }, [props.value]); /** 检索当前页面组件 */ var search = function search(keyword) { setSearchKeyword(keyword); }; (0, _react.useEffect)(function () { queryData(); }, [start, searchKeyword]); var rowSelection = { selectedRowKeys: value, onSelect: function onSelect(checked, record, row) { props.onSelect({ type: 'detail', result: [record.itemId] }); }, mode: 'single' }; return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(_search["default"], { style: { margin: '10px 0' }, shape: "simple", onSearch: search, placeholder: "\u901A\u8FC7\u5546\u54C1\u540D\u79F0\u3001ID\u641C\u7D22" }), /*#__PURE__*/_react["default"].createElement("div", { className: "detail-page-list" }, /*#__PURE__*/_react["default"].createElement(_table["default"], { dataSource: data, rowSelection: rowSelection, hasBorder: false, primaryKey: "itemId", columns: _data.columns })), /*#__PURE__*/_react["default"].createElement(_pagination["default"], { total: total, pageSize: PAGESIZE, hideOnlyOnePage: true, current: Math.floor(start / PAGESIZE) + 1, onChange: function onChange(n) { setStart((n - 1) * PAGESIZE); }, shape: "arrow-only", pageShowCount: 5, style: { marginTop: '16px', "float": 'right' }, showJump: false })); }