From 4646e7db78e9622a01f6e74b557bc1eff808f28a Mon Sep 17 00:00:00 2001
From: xiaoQQya <46475319+xiaoQQya@users.noreply.github.com>
Date: Sun, 18 May 2025 15:26:12 +0800
Subject: [PATCH] =?UTF-8?q?=E2=9C=A8=20=E6=96=B0=E5=A2=9E=E6=96=87?=
=?UTF-8?q?=E4=BB=B6=E9=80=89=E6=8B=A9=E5=88=97=E8=A1=A8=E6=8E=92=E5=BA=8F?=
=?UTF-8?q?=E5=8A=9F=E8=83=BD=20(#88)?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
app/templates/index.html | 56 +++++++++++++++++++++++++++++++++-------
1 file changed, 46 insertions(+), 10 deletions(-)
diff --git a/app/templates/index.html b/app/templates/index.html
index 788ced6..86b0e52 100644
--- a/app/templates/index.html
+++ b/app/templates/index.html
@@ -307,7 +307,7 @@
@@ -332,7 +332,7 @@
@@ -468,12 +468,24 @@
- | 文件名 |
- 正则处理 |
+
+ 文件名
+ {{ fileSelect.sortOrder === "asc" ? "↑" : "↓" }}
+ |
+
+ 正则处理
+ |
- 大小 |
- 修改日期 ↓ |
- 操作 |
+
+ 大小
+ |
+
+ 修改日期
+ {{ fileSelect.sortOrder === "asc" ? "↑" : "↓" }}
+ |
+
+ 操作
+ |
@@ -562,6 +574,8 @@
selectDir: true,
selectShare: true,
previewRegex: false,
+ sortBy: "updated_at",
+ sortOrder: "desc"
},
},
filters: {
@@ -984,7 +998,8 @@
axios.get('/get_savepath_detail', {
params: params
}).then(response => {
- this.fileSelect.fileList = response.data.data.list
+ this.fileSelect.fileList = response.data.data.list;
+ this.sortFileList(this.fileSelect.sortBy, this.fileSelect.sortOrder);
if (response.data.data.paths?.length > 0) {
this.fileSelect.paths = response.data.data.paths
}
@@ -1017,6 +1032,7 @@
}).then(response => {
if (response.data.success) {
this.fileSelect.fileList = response.data.data.list;
+ this.sortFileList(this.fileSelect.sortBy, this.fileSelect.sortOrder);
this.fileSelect.paths = response.data.data.paths;
this.fileSelect.stoken = response.data.data.stoken;
} else {
@@ -1090,6 +1106,26 @@
shareurl = `${shareurl}#/list/share/${dir.fid}-${dir.name?.replace('-', '*101')}`
}
return shareurl;
+ },
+ sortFileList(column, order) {
+ if (this.fileSelect.sortBy === column && !order) {
+ this.fileSelect.sortOrder = this.fileSelect.sortOrder === "asc" ? "desc" : "asc";
+ } else {
+ this.fileSelect.sortBy = column;
+ this.fileSelect.sortOrder = order || "asc";
+ }
+
+ this.fileSelect.fileList.sort((a, b) => {
+ let valA = a[this.fileSelect.sortBy];
+ let valB = b[this.fileSelect.sortBy];
+
+ if (typeof valA === "string") valA = valA.toLowerCase();
+ if (typeof valB === "string") valB = valB.toLowerCase();
+
+ if (valA < valB) return this.fileSelect.sortOrder === "asc" ? -1 : 1;
+ if (valA > valB) return this.fileSelect.sortOrder === "asc" ? 1 : -1;
+ return 0;
+ });
}
}
});