fix
Some checks failed
Deploy / deploy (build, debian, 22) (push) Has been cancelled
Deploy / deploy (build:staging, school, 8822) (push) Has been cancelled

This commit is contained in:
2026-04-13 04:57:40 -06:00
parent 1d01415771
commit b22eb85f3a
3 changed files with 29 additions and 19 deletions

View File

@@ -1,11 +1,10 @@
<template> <template>
<n-flex vertical> <n-flex vertical>
<n-flex align="center"> <n-flex align="center">
<n-text strong>素材</n-text> <n-text strong>图片素材</n-text>
<n-button size="small" @click="showUpload = true">上传图片</n-button> <n-button size="small" @click="showUpload = true">上传</n-button>
</n-flex> </n-flex>
<n-empty v-if="!assets.length" description="暂无素材" size="small" /> <n-flex v-if="assets.length" wrap>
<n-flex v-else wrap>
<n-card <n-card
v-for="asset in assets" v-for="asset in assets"
:key="asset.name" :key="asset.name"
@@ -15,13 +14,13 @@
<template #cover> <template #cover>
<n-image <n-image
:src="asset.url" :src="asset.url"
style="width: 100%; height: 80px; object-fit: cover" style="width: 100%; height: 100px; object-fit: contain"
/> />
</template> </template>
<n-flex align="center" justify="space-between"> <n-flex align="center" justify="space-between">
<n-text style="font-size: 12px; word-break: break-all">{{ <n-text style="font-size: 12px; word-break: break-all">
asset.name {{ asset.name }}
}}</n-text> </n-text>
<n-button <n-button
size="tiny" size="tiny"
quaternary quaternary

View File

@@ -33,7 +33,10 @@
</template> </template>
</n-flex> </n-flex>
<n-flex> <n-flex>
<n-tooltip v-if="tutorialAssets.length && taskTab === TASK_TYPE.Tutorial" trigger="hover"> <n-tooltip
v-if="tutorialAssets.length && taskTab === TASK_TYPE.Tutorial"
trigger="hover"
>
<template #trigger> <template #trigger>
<n-button text @click="showAssets = true"> <n-button text @click="showAssets = true">
<Icon :width="16" icon="lucide:image"></Icon> <Icon :width="16" icon="lucide:image"></Icon>
@@ -45,7 +48,9 @@
<template #trigger> <template #trigger>
<n-button <n-button
text text
@click="$router.push({ name: 'submissions', params: { page: 1 } })" @click="
$router.push({ name: 'submissions', params: { page: 1 } })
"
> >
<Icon :width="16" icon="lucide:list"></Icon> <Icon :width="16" icon="lucide:list"></Icon>
</n-button> </n-button>
@@ -76,19 +81,25 @@
<n-modal <n-modal
v-model:show="showAssets" v-model:show="showAssets"
preset="card" preset="card"
title="素材" title="图片素材"
style="width: 500px" style="width: 570px"
> >
<n-grid :cols="3" :x-gap="12" :y-gap="12"> <n-flex wrap>
<n-gi v-for="asset in tutorialAssets" :key="asset.name"> <n-card
<n-card size="small" :title="asset.name"> v-for="asset in tutorialAssets"
:key="asset.name"
:title="asset.name"
size="small"
style="width: 120px"
>
<template #cover>
<n-image <n-image
:src="asset.url" :src="asset.url"
style="width: 100%; height: 100px; object-fit: contain" style="width: 100%; height: 100px; object-fit: contain"
/> />
</template>
</n-card> </n-card>
</n-gi> </n-flex>
</n-grid>
</n-modal> </n-modal>
</template> </template>
<script lang="ts" setup> <script lang="ts" setup>

View File

@@ -40,7 +40,7 @@
<n-gi :span="6" class="col"> <n-gi :span="6" class="col">
<n-flex vertical> <n-flex vertical>
<n-form inline> <n-form inline :show-feedback="false">
<n-form-item label="序号" label-placement="left"> <n-form-item label="序号" label-placement="left">
<n-input-number v-model:value="tutorial.display" /> <n-input-number v-model:value="tutorial.display" />
</n-form-item> </n-form-item>