提交 8eaf5756 编写于 作者: 无木

feat(table): editable component text align

使可编辑单元格显示的input中的文字对齐方式与列自身的align属性相匹配
上级 d018363d
......@@ -13,6 +13,7 @@
:popoverVisible="getRuleVisible"
:rule="getRule"
:ruleMessage="ruleMessage"
:class="getWrapperClass"
size="small"
ref="elRef"
@change="handleChange"
......@@ -140,6 +141,11 @@
};
});
const getWrapperClass = computed(() => {
const { align = 'center' } = props.column;
return `edit-cell-align-${align}`;
});
const getRowEditable = computed(() => {
const { editable } = props.record || {};
return !!editable;
......@@ -315,6 +321,7 @@
getComponentProps,
handleOptionsChange,
getWrapperStyle,
getWrapperClass,
getRowEditable,
getValues,
handleEnter,
......@@ -326,6 +333,30 @@
<style lang="less">
@prefix-cls: ~'@{namespace}-editable-cell';
.edit-cell-align-left {
text-align: left;
input:not(.ant-calendar-picker-input, .ant-time-picker-input) {
text-align: left;
}
}
.edit-cell-align-center {
text-align: center;
input:not(.ant-calendar-picker-input, .ant-time-picker-input) {
text-align: center;
}
}
.edit-cell-align-right {
text-align: right;
input:not(.ant-calendar-picker-input, .ant-time-picker-input) {
text-align: right;
}
}
.edit-cell-rule-popover {
.ant-popover-inner-content {
padding: 4px 8px;
......
......@@ -28,33 +28,34 @@
editComponentProps: {
prefix: '$',
},
width: 200,
width: 150,
},
{
title: '默认输入状态',
dataIndex: 'name7',
editRow: true,
width: 200,
width: 150,
},
{
title: '输入框校验',
dataIndex: 'name1',
editRow: true,
align: 'left',
// 默认必填校验
editRule: true,
width: 200,
width: 150,
},
{
title: '输入框函数校验',
dataIndex: 'name2',
editRow: true,
align: 'right',
editRule: async (text) => {
if (text === '2') {
return '不能输入该值';
}
return '';
},
width: 200,
},
{
title: '数字输入框',
......@@ -62,7 +63,7 @@
editRow: true,
editRule: true,
editComponent: 'InputNumber',
width: 200,
width: 150,
},
{
title: '下拉框',
......@@ -102,7 +103,7 @@
valueFormat: 'YYYY-MM-DD',
format: 'YYYY-MM-DD',
},
width: 200,
width: 150,
},
{
title: '时间选择',
......@@ -113,17 +114,7 @@
valueFormat: 'HH:mm',
format: 'HH:mm',
},
width: 200,
},
{
title: '远程下拉',
dataIndex: 'name4',
editRow: true,
editComponent: 'ApiSelect',
editComponentProps: {
api: optionsListApi,
},
width: 200,
width: 100,
},
{
title: '勾选框',
......@@ -134,7 +125,7 @@
editValueMap: (value) => {
return value ? '' : '';
},
width: 200,
width: 100,
},
{
title: '开关',
......@@ -144,7 +135,7 @@
editValueMap: (value) => {
return value ? '' : '';
},
width: 200,
width: 100,
},
];
export default defineComponent({
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册