UNPKG

@aliretail/react-materials-components

Version:
91 lines (73 loc) 3.36 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports["default"] = void 0; var _button = _interopRequireDefault(require("@alifd/next/lib/button")); var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")); var _message = _interopRequireDefault(require("@alifd/next/lib/message")); var _react = _interopRequireDefault(require("react")); var _Tablex = require("../../Tablex"); var RelateMainModeTable = function RelateMainModeTable(props) { var _props$dataSource = props.dataSource, dataSource = _props$dataSource === void 0 ? [] : _props$dataSource, setDataSource = props.setDataSource, _props$columns = props.columns, columns = _props$columns === void 0 ? [] : _props$columns, onSave = props.onSave, onDelete = props.onDelete; // 添加一条数据 var addRelateObj = function addRelateObj() { var newDataSource = Object.assign([], dataSource); if (newDataSource.filter(function (item) { return !item.isComponentDisabled; }).length) { _message["default"].warning('请先保存再添加'); return; } // 添加一条数据 根据动态列的dataIndex生成 一条以dataIndex为key的空对象 var columnsKeyObj = columns.map(function (item) { var _ref; return _ref = {}, _ref[item.dataIndex] = '', _ref; }).reduce(function (keysObj, item) { return Object.assign(keysObj, item); }, {}); newDataSource.push((0, _extends2["default"])({}, columnsKeyObj, { isComponentDisabled: false, isSave: false })); setDataSource(newDataSource); }; // 表格操作列 var operateCell = function operateCell(value, index, record) { return !(record !== null && record !== void 0 && record.isComponentDisabled) ? /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement("span", { className: "relate-operate-button", onClick: function onClick() { return onSave(value, index, record); } }, "\u4FDD\u5B58"), "\xA0\xA0\xA0", /*#__PURE__*/_react["default"].createElement("span", { className: "relate-operate-button", onClick: function onClick() { var newDataSource = Object.assign([], dataSource); newDataSource.splice(index, 1); setDataSource(newDataSource); } }, "\u53D6\u6D88")) : /*#__PURE__*/_react["default"].createElement("span", { className: "relate-operate-button", onClick: function onClick() { return onDelete(value, index, record); } }, "\u5220\u9664"); }; return /*#__PURE__*/_react["default"].createElement(_Tablex.AliretailTableContainer, { dataSource: dataSource, columns: [].concat(columns, [{ title: '操作', dataIndex: 'operate', width: '15%', cell: function cell(val, index, record) { return operateCell(val, index, record); } }]) }, /*#__PURE__*/_react["default"].createElement(_Tablex.AliretailTableActionBar, null, /*#__PURE__*/_react["default"].createElement(_button["default"], { onClick: addRelateObj }, "\u6DFB\u52A0")), /*#__PURE__*/_react["default"].createElement(_Tablex.AliretailTable, null)); }; var _default = RelateMainModeTable; exports["default"] = _default;