@antdp/edit-table
Version:
基于antd封装的组件
90 lines (89 loc) • 3.3 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["default"];
Object.defineProperty(exports, "__esModule", {
value: true
});
exports["default"] = void 0;
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
var _react = _interopRequireDefault(require("react"));
var _antd = require("antd");
var _jsxRuntime = require("react/jsx-runtime");
var _this = void 0;
/** 操作列配置 */
var operation = function operation(_ref) {
var optConfig = _ref.optConfig,
isEditing = _ref.isEditing,
isAddEdit = _ref.isAddEdit,
save = _ref.save,
isOptDelete = _ref.isOptDelete,
cancel = _ref.cancel,
onDelete = _ref.onDelete,
edit = _ref.edit,
newAdd = _ref.newAdd,
editingKey = _ref.editingKey,
rowKey = _ref.rowKey,
multiple = _ref.multiple;
return [(0, _objectSpread2["default"])((0, _objectSpread2["default"])({
title: '操作',
align: 'center',
width: 120
}, optConfig), {}, {
render: function render(item, record, index) {
var editable = isEditing(record);
var isNewAdd = isAddEdit(record);
if (optConfig && optConfig.render) {
return optConfig.render(item, record, index, {
editable: editable,
isNewAdd: isNewAdd,
save: save,
cancel: cancel,
onDelete: onDelete,
edit: edit,
newAdd: newAdd,
editingKey: editingKey
});
}
return editable ? /*#__PURE__*/(0, _jsxRuntime.jsxs)("span", {
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_antd.Typography.Link, {
onClick: function onClick() {
return save(record[rowKey], record, index);
},
style: {
marginRight: 8
},
children: "\u4FDD\u5B58"
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_antd.Popconfirm, {
title: "\u662F\u5426\u53D6\u6D88\u5F53\u524D\u884C\u7F16\u8F91?",
okText: "\u662F",
cancelText: "\u5426",
onConfirm:
// 如果是新增操作的数据,进行判断 取消时使用删除方法
isNewAdd ? onDelete.bind(_this, record[rowKey], record, index) : cancel.bind(_this, record[rowKey]),
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_antd.Typography.Link, {
children: "\u53D6\u6D88"
})
})]
}) : /*#__PURE__*/(0, _jsxRuntime.jsxs)(_antd.Space, {
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_antd.Typography.Link, {
disabled: !!editingKey.length && !multiple,
onClick: function onClick() {
return edit(record);
},
children: "\u7F16\u8F91"
}), isOptDelete && /*#__PURE__*/(0, _jsxRuntime.jsx)(_antd.Popconfirm, {
title: "\u662F\u5426\u5220\u9664\u5F53\u524D\u884C\u6570\u636E?",
okText: "\u662F",
cancelText: "\u5426",
onConfirm: function onConfirm() {
return onDelete(record[rowKey], record, index);
},
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_antd.Typography.Link, {
children: "\u5220\u9664"
})
})]
});
}
})];
};
var _default = exports["default"] = operation;
module.exports = exports.default;