Compare commits
2 Commits
c50457f8ee
...
ff926d6f91
Author | SHA1 | Date | |
---|---|---|---|
|
ff926d6f91 | ||
|
839c0ed6e1 |
14
package-lock.json
generated
14
package-lock.json
generated
|
@ -22,6 +22,7 @@
|
||||||
"tdesign-vue-next": "^1.9.3",
|
"tdesign-vue-next": "^1.9.3",
|
||||||
"vite-plugin-mock": "^3.0.1",
|
"vite-plugin-mock": "^3.0.1",
|
||||||
"vue": "^3.4.21",
|
"vue": "^3.4.21",
|
||||||
|
"vue-draggable-plus": "^0.4.0",
|
||||||
"vue-router": "^4.3.0"
|
"vue-router": "^4.3.0"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
|
@ -4505,6 +4506,19 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/vue-draggable-plus": {
|
||||||
|
"version": "0.4.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/vue-draggable-plus/-/vue-draggable-plus-0.4.0.tgz",
|
||||||
|
"integrity": "sha512-CcvSopMmSZY9McCdQ56QsAydT5cZilx9LzLU0UIz6KDYe9ll6QnmNHN80t6wnxN402ZECSXc5X1dm/myiMFi+A==",
|
||||||
|
"peerDependencies": {
|
||||||
|
"@types/sortablejs": "^1.15.0"
|
||||||
|
},
|
||||||
|
"peerDependenciesMeta": {
|
||||||
|
"@vue/composition-api": {
|
||||||
|
"optional": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/vue-router": {
|
"node_modules/vue-router": {
|
||||||
"version": "4.3.0",
|
"version": "4.3.0",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
|
|
|
@ -24,6 +24,7 @@
|
||||||
"tdesign-vue-next": "^1.9.3",
|
"tdesign-vue-next": "^1.9.3",
|
||||||
"vite-plugin-mock": "^3.0.1",
|
"vite-plugin-mock": "^3.0.1",
|
||||||
"vue": "^3.4.21",
|
"vue": "^3.4.21",
|
||||||
|
"vue-draggable-plus": "^0.4.0",
|
||||||
"vue-router": "^4.3.0"
|
"vue-router": "^4.3.0"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
<template>
|
<template>
|
||||||
<div style="height: 100%">
|
<div style="height: 100%">
|
||||||
<t-menu>
|
<t-menu style="height: 100vh">
|
||||||
<t-submenu value="1" title="首页">
|
<t-submenu value="1" title="首页">
|
||||||
<template #icon>
|
<template #icon>
|
||||||
<t-icon name="home" />
|
<t-icon name="home" />
|
||||||
|
@ -75,6 +75,9 @@
|
||||||
<t-menu-item value="3-10" to="/student-information">
|
<t-menu-item value="3-10" to="/student-information">
|
||||||
<span>学生信息统计表</span>
|
<span>学生信息统计表</span>
|
||||||
</t-menu-item>
|
</t-menu-item>
|
||||||
|
<t-menu-item value="3-11" to="/shi-yan">
|
||||||
|
<span>实验</span>
|
||||||
|
</t-menu-item>
|
||||||
</t-submenu>
|
</t-submenu>
|
||||||
<t-submenu value="4" title="学生管理">
|
<t-submenu value="4" title="学生管理">
|
||||||
<template #icon>
|
<template #icon>
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
<t-content>
|
<t-content>
|
||||||
<RouterView />
|
<RouterView />
|
||||||
</t-content>
|
</t-content>
|
||||||
<t-footer style="height: 2px">Footer</t-footer>
|
<!-- <t-footer style="height: 2px">Footer</t-footer> -->
|
||||||
</t-layout>
|
</t-layout>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
74
src/pages/receivables-management/ShiYan.vue
Normal file
74
src/pages/receivables-management/ShiYan.vue
Normal file
|
@ -0,0 +1,74 @@
|
||||||
|
<template>
|
||||||
|
<button @click="start">start</button>
|
||||||
|
<button @click="pause">pause</button>
|
||||||
|
<button @click="disabled = true">disabled</button>
|
||||||
|
<div class="flex">
|
||||||
|
<VueDraggable
|
||||||
|
ref="el"
|
||||||
|
v-model="list"
|
||||||
|
:disabled="disabled"
|
||||||
|
:animation="150"
|
||||||
|
ghostClass="ghost"
|
||||||
|
class="flex flex-col gap-2 p-4 w-300px h-300px m-auto bg-gray-500/5 rounded"
|
||||||
|
@start="onStart"
|
||||||
|
@update="onUpdate"
|
||||||
|
>
|
||||||
|
<div
|
||||||
|
v-for="item in list"
|
||||||
|
:key="item.id"
|
||||||
|
class="cursor-move h-30 bg-gray-500/5 rounded p-3 cursor-move"
|
||||||
|
>
|
||||||
|
{{ item.name }}
|
||||||
|
</div>
|
||||||
|
</VueDraggable>
|
||||||
|
<preview-list :list="list" />
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup lang="ts">
|
||||||
|
import { ref } from 'vue'
|
||||||
|
import { type UseDraggableReturn, VueDraggable } from 'vue-draggable-plus'
|
||||||
|
const list = ref([
|
||||||
|
{
|
||||||
|
name: 'Joao',
|
||||||
|
id: 1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'Jean',
|
||||||
|
id: 2
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'Johanna',
|
||||||
|
id: 3
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'Juan',
|
||||||
|
id: 4
|
||||||
|
}
|
||||||
|
])
|
||||||
|
|
||||||
|
const el = ref<UseDraggableReturn>()
|
||||||
|
const disabled = ref(false)
|
||||||
|
function pause() {
|
||||||
|
el.value?.pause()
|
||||||
|
}
|
||||||
|
|
||||||
|
function start() {
|
||||||
|
el.value?.start()
|
||||||
|
}
|
||||||
|
|
||||||
|
const onStart = () => {
|
||||||
|
console.log('start')
|
||||||
|
}
|
||||||
|
|
||||||
|
const onUpdate = () => {
|
||||||
|
console.log('update')
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped>
|
||||||
|
.ghost {
|
||||||
|
opacity: 0.5;
|
||||||
|
background: #c8ebfb;
|
||||||
|
}
|
||||||
|
</style>
|
|
@ -79,6 +79,12 @@ const ReceivablesManagement = [
|
||||||
name: "Arrearage",
|
name: "Arrearage",
|
||||||
component: () => import("@/pages/receivables-management/Arrearage.vue"),
|
component: () => import("@/pages/receivables-management/Arrearage.vue"),
|
||||||
meta: { title: "学生欠费明细表", },
|
meta: { title: "学生欠费明细表", },
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: "/shi-yan",
|
||||||
|
name: "Shiyan",
|
||||||
|
component: () => import("@/pages/receivables-management/ShiYan.vue"),
|
||||||
|
meta: { title: "实验", },
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
|
|
|
@ -186,7 +186,7 @@ pre {
|
||||||
.back-color {
|
.back-color {
|
||||||
background-color: #f5f7fb;
|
background-color: #f5f7fb;
|
||||||
padding: 16px 24px;
|
padding: 16px 24px;
|
||||||
height: calc(94vh - 64px);
|
height: calc(101vh - 64px);
|
||||||
overflow-y: auto;
|
overflow-y: auto;
|
||||||
overflow-x: hidden;
|
overflow-x: hidden;
|
||||||
}
|
}
|
||||||
|
|
|
@ -26,7 +26,7 @@
|
||||||
.back-color {
|
.back-color {
|
||||||
background-color: #f5f7fb;
|
background-color: #f5f7fb;
|
||||||
padding: 16px 24px;
|
padding: 16px 24px;
|
||||||
height: calc(94vh - 64px);
|
height: calc(101vh - 64px);
|
||||||
overflow-y: auto;
|
overflow-y: auto;
|
||||||
overflow-x: hidden;
|
overflow-x: hidden;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user