Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commitba0133c

Browse files
allow option in table to enable editing on single/double click
1 parentb31cae1 commitba0133c

File tree

7 files changed

+30
-2
lines changed

7 files changed

+30
-2
lines changed

‎client/packages/lowcoder/src/components/table/EditableCell.tsx‎

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ export interface CellProps {
3737
candidateStatus?:{text:string;status:StatusType}[];
3838
textOverflow?:boolean;
3939
cellTooltip?:string;
40+
editMode?:string;
4041
onTableEvent?:(eventName:any)=>void;
4142
}
4243

@@ -94,13 +95,15 @@ export function EditableCell<T extends JSONValue>(props: EditableCellProps<T>) {
9495
candidateTags,
9596
// tagColors
9697
candidateStatus,
98+
editMode,
9799
onTableEvent,
98100
}=props;
99101
conststatus=_.isNil(changeValue) ?"normal" :"toSave";
100102
consteditable=editViewFn ?props.editable :false;
101103
const{ isEditing, setIsEditing}=useContext(TableCellContext);
102104
constvalue=changeValue??baseValue!;
103105
const[tmpValue,setTmpValue]=useState<T|null>(value);
106+
constsingleClickEdit=editMode==='single';
104107

105108
useEffect(()=>{
106109
setTmpValue(value);
@@ -175,8 +178,8 @@ export function EditableCell<T extends JSONValue>(props: EditableCellProps<T>) {
175178
width:'100%',
176179
height:'100%',
177180
}}
178-
//onDoubleClick={enterEditFn}
179-
onClick={enterEditFn}
181+
onDoubleClick={!singleClickEdit ?enterEditFn :undefined}
182+
onClick={singleClickEdit ?enterEditFn :undefined}
180183
>
181184
</div>
182185
</CellWrapper>

‎client/packages/lowcoder/src/comps/comps/tableComp/tableCompView.tsx‎

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -767,6 +767,7 @@ export function TableCompView(props: {
767767
constinlineAddNewRow=useMemo(()=>compChildren.inlineAddNewRow.getView(),[compChildren.inlineAddNewRow]);
768768
constpagination=useMemo(()=>compChildren.pagination.getView(),[compChildren.pagination]);
769769
constsize=useMemo(()=>compChildren.size.getView(),[compChildren.size]);
770+
consteditModeClicks=useMemo(()=>compChildren.editModeClicks.getView(),[compChildren.editModeClicks]);
770771
constonEvent=useMemo(()=>compChildren.onEvent.getView(),[compChildren.onEvent]);
771772
constdynamicColumn=compChildren.dynamicColumn.getView();
772773
constdynamicColumnConfig=useMemo(
@@ -785,6 +786,7 @@ export function TableCompView(props: {
785786
dynamicColumn,
786787
dynamicColumnConfig,
787788
columnsAggrData,
789+
editModeClicks,
788790
onEvent,
789791
),
790792
[
@@ -795,6 +797,7 @@ export function TableCompView(props: {
795797
dynamicColumn,
796798
dynamicColumnConfig,
797799
columnsAggrData,
800+
editModeClicks,
798801
]
799802
);
800803

‎client/packages/lowcoder/src/comps/comps/tableComp/tableDynamicColumn.test.tsx‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@ const expectColumn = (
4545
comp.children.dynamicColumn.getView(),
4646
dynamicColumnConfig,
4747
comp.columnAggrData,
48+
comp.children.editModeClicks.getView(),
4849
onEvent,
4950
);
5051
expect(columnViews.length).toBeGreaterThanOrEqual(antdColumns.length);

‎client/packages/lowcoder/src/comps/comps/tableComp/tablePropertyView.tsx‎

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -562,6 +562,10 @@ export function compTablePropertyView<T extends MultiBaseComp<TableChildrenType>
562562
label:trans("table.dynamicColumnConfig"),
563563
tooltip:trans("table.dynamicColumnConfigDesc"),
564564
})}
565+
{comp.children.editModeClicks.propertyView({
566+
label:trans("table.editMode"),
567+
radioButton:true,
568+
})}
565569
{comp.children.searchText.propertyView({
566570
label:trans("table.searchText"),
567571
tooltip:trans("table.searchTextTooltip"),

‎client/packages/lowcoder/src/comps/comps/tableComp/tableTypes.tsx‎

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,17 @@ import { PaginationControl } from "./paginationControl";
3737
import{SelectionControl}from"./selectionControl";
3838
import{AutoHeightControl}from"comps/controls/autoHeightControl";
3939

40+
consteditModeClickOptions=[
41+
{
42+
label:trans("table.singleClick"),
43+
value:"single",
44+
},
45+
{
46+
label:trans("table.doubleClick"),
47+
value:"double",
48+
},
49+
]asconst;
50+
4051
constsummarRowsOptions=[
4152
{
4253
label:"1",
@@ -248,6 +259,7 @@ const tableChildrenMap = {
248259
expansion:ExpansionControl,
249260
selectedCell:stateComp<JSONObject>({}),
250261
inlineAddNewRow:BoolControl,
262+
editModeClicks:dropdownControl(editModeClickOptions,"single"),
251263
};
252264

253265
exportconstTableInitComp=(function(){

‎client/packages/lowcoder/src/comps/comps/tableComp/tableUtils.tsx‎

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -295,6 +295,7 @@ export function columnsToAntdFormat(
295295
dynamicColumn:boolean,
296296
dynamicColumnConfig:Array<string>,
297297
columnsAggrData:ColumnsAggrData,
298+
editMode:string,
298299
onTableEvent:(eventName:any)=>void,
299300
):Array<CustomColumnType<RecordType>>{
300301
constcustomColumns=columns.filter(col=>col.isCustom).map(col=>col.dataIndex);
@@ -392,6 +393,7 @@ export function columnsToAntdFormat(
392393
currentRow:row,
393394
currentIndex:index,
394395
}),
396+
editMode,
395397
onTableEvent,
396398
});
397399
},

‎client/packages/lowcoder/src/i18n/locales/en.ts‎

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2002,6 +2002,9 @@ export const en = {
20022002
"showSummary":"Show Summary Row",
20032003
"totalSummaryRows":"Total Rows",
20042004
"inlineAddNewRow":"Inline Add New Row",
2005+
"editMode":"Edit Mode",
2006+
"singleClick":"Single Click",
2007+
"doubleClick":"Double Click",
20052008
},
20062009

20072010

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp