优化用户界面,修改删除用户权限按钮文本,更新问题列表排序和无数据提示,调整答案生成提示文本

This commit is contained in:
keqingmoe 2024-12-30 23:53:47 +08:00
parent fb4d7df519
commit a8f889f886
4 changed files with 22 additions and 9 deletions

View File

@ -1,6 +1,6 @@
<template> <template>
<v-data-table :loading="loading" :headers="(headers as any)" :items="records" <v-data-table :loading="loading" :headers="(headers as any)" :items="records"
:sort-by="[{ key: 'id', order: 'desc' }]" multi-sort items-per-page-text="每页"> :sort-by="[{ key: 'id', order: 'desc' }]" multi-sort items-per-page-text="每页" no-data-text="暂时没有提交记录">
<template v-slot:loading> <template v-slot:loading>
<v-skeleton-loader></v-skeleton-loader> <v-skeleton-loader></v-skeleton-loader>
</template> </template>

View File

@ -22,7 +22,7 @@
修改指定用户的身份 修改指定用户的身份
</v-chip> </v-chip>
<v-chip class="chips" color="red" @click="dialogDeleteAccountShow = true"> <v-chip class="chips" color="red" @click="dialogDeleteAccountShow = true">
删除指定用户的权限 删除指定用户的账号
</v-chip> </v-chip>
</v-card-item> </v-card-item>
</v-card> </v-card>

View File

@ -1,6 +1,6 @@
<template> <template>
<v-data-table :loading="loading" :headers="(headers as any)" :items="problems" <v-data-table :loading="loading" :headers="(headers as any)" :items="problems"
:sort-by="[{ key: 'id', order: 'asc' }, { key: 'problem', order: 'asc' }]" multi-sort items-per-page-text="每页"> :sort-by="[{ key: 'id', order: 'asc' }]" multi-sort items-per-page-text="每页" no-data-text="题库里面没有题目">
<template v-slot:loading> <template v-slot:loading>
<v-skeleton-loader></v-skeleton-loader> <v-skeleton-loader></v-skeleton-loader>
</template> </template>
@ -30,12 +30,12 @@
</v-row> </v-row>
<v-row> <v-row>
<v-col> <v-col>
<v-text-field v-model="editedItem.answer" prepend-inner-icon="mdi-numeric" label="答案" <v-text-field v-model="editedItem.answer" prepend-inner-icon="mdi-numeric" :label="answerLabel"
append-inner-icon="mdi-auto-fix" @click:append-inner="generateAnswer" :rules="notEmptyRules"> append-inner-icon="mdi-auto-fix" @click:append-inner="generateAnswer" :rules="notEmptyRules">
<v-tooltip activator="parent" location="bottom"> <v-tooltip activator="parent" location="bottom">
点击右侧 <v-icon icon="mdi-auto-fix"></v-icon> {{ useFraction ? '' : '' }} 点击右侧 <v-icon icon="mdi-auto-fix"></v-icon> {{ useFraction ? '' : '' }}
<br /> <br />
再次点击还能生成其{{ useFraction ? '舍入' : '带循环节' }}表示 再次点击还能生成其{{ useFraction ? '舍入' : '有理数' }}表示
</v-tooltip> </v-tooltip>
</v-text-field> </v-text-field>
</v-col> </v-col>
@ -216,13 +216,26 @@ const mathFraction = mathjs.create(mathjs.all, {
}); });
let useFraction = false; let useFraction = false;
const answerLabel = ref('答案');
watch(editedItem, (newValue, oldValue) => {
console.log(`${JSON.stringify(oldValue)} => ${JSON.stringify(newValue)}`);
if (newValue.answer != oldValue.answer) {
answerLabel.value = '答案';
}
});
let timeout: number = setTimeout(() => { }, 0);
const generateAnswer = () => { const generateAnswer = () => {
try { try {
editedItem.value.answer = (useFraction ? mathFraction : mathBigNumber).evaluate(editedItem.value.problem); editedItem.value.answer = (useFraction ? mathFraction : mathBigNumber).evaluate(editedItem.value.problem);
useFraction = !useFraction;
} catch (e) { } catch (e) {
dialog('发生异常', `${e}`); editedItem.value.answer = '';
} }
answerLabel.value = `答案(${useFraction ? '有理数' : '舍入'}表示)`;
useFraction = !useFraction;
clearTimeout(timeout);
timeout = setTimeout(() => answerLabel.value = '答案', 1000);
}; };
const formTitle = computed(() => { const formTitle = computed(() => {

View File

@ -15,7 +15,7 @@
<v-divider :thickness="10" class="border-opacity-0"></v-divider> <v-divider :thickness="10" class="border-opacity-0"></v-divider>
<v-btn :loading="loading" class="mb-8" color="blue" size="large" type="submit" variant="tonal" block> <v-btn :loading="loading" class="mb-8" color="blue" size="large" type="submit" variant="tonal" block>
修改密码1 修改密码
</v-btn> </v-btn>
</v-form> </v-form>