Selaa lähdekoodia

上传视频,按视频标题中包含的数字序列进行升序排列。

luolinsong 3 päivää sitten
vanhempi
commit
715d68c715
1 muutettua tiedostoa jossa 19 lisäystä ja 1 poistoa
  1. 19 1
      src/views/course/videoResource/index.vue

+ 19 - 1
src/views/course/videoResource/index.vue

@@ -401,7 +401,7 @@
             {{ scope.$index + 1 }}
           </template>
         </el-table-column>
-        <el-table-column label="素材名称" align="center" prop="resourceName" min-width="120" />
+        <el-table-column label="素材名称" align="center" prop="resourceName" min-width="120" sortable :sort-method="sortByNumberAfterDi"/>
         <el-table-column label="文件名称" align="center" prop="fileName" min-width="120" />
         <el-table-column label="分类" align="center" min-width="100">
           <template slot-scope="scope">
@@ -960,6 +960,24 @@ export default {
     this.getList();
   },
   methods: {
+     sortByPureNumbers(a, b) {
+  const extractFirstNumber = (str) => {
+    if (!str) return 999999;
+    // 使用更具体的匹配
+    const match = str.match(/(\d+)/);
+    if (match) {
+      const fullNumber = match[1];
+      console.log('提取完整数字:', fullNumber);
+      return parseInt(fullNumber, 10);
+    }
+    return 999999;
+  };
+
+  const numA = extractFirstNumber(a.resourceName);
+  const numB = extractFirstNumber(b.resourceName);
+
+  return numA - numB;
+},
     /** 将数字索引转换为字母序号 (0->A, 1->B, 等) */
     convertToLetter(index) {
       // 确保索引是数字