个人资料和岗位列表联调,简历优化部分页面

This commit is contained in:
2026-04-01 11:41:51 +08:00
parent 0468339d23
commit 821a950df2
42 changed files with 5935 additions and 748 deletions
+22
View File
@@ -657,6 +657,19 @@
</button>
</template>
<!-- ========== 作品集模块 ========== -->
<template v-else-if="module === 'portfolio'">
<div class="profile-drawer__field">
<label class="profile-drawer__label">作品集链接</label>
<textarea
class="profile-drawer__textarea"
placeholder="请输入/粘贴作品集链接"
v-model="portfolioUrl"
rows="6"
></textarea>
</div>
</template>
<!-- ========== 技能模块 ========== -->
<template v-else-if="module === 'skills'">
<!-- 技能标签列表 -->
@@ -859,6 +872,7 @@ const moduleTitleMap: Record<string, string> = {
work: '工作经历',
internship: '实习经历',
project: '项目经历',
portfolio: '作品集',
skills: '技能',
competition: '竞赛',
certificate: '证书',
@@ -1082,6 +1096,9 @@ const removeCompetition = (index: number) => {
/** 技能列表 — 技能模块使用 */
const skillsList = ref<string[]>([])
/** 作品集链接 — 作品集模块使用 */
const portfolioUrl = ref('')
/** 新技能输入框的值 */
const newSkillInput = ref('')
@@ -1185,6 +1202,9 @@ watch(() => props.modelValue, (visible) => {
} else {
competitionList.value = [createEmptyCompetition()]
}
} else if (props.module === 'portfolio') {
// 作品集:用初始数据填充链接
portfolioUrl.value = props.initialData?.portfolioUrl || ''
} else if (props.module === 'skills') {
// 技能:用初始数据填充列表,若无则创建空数组
skillsList.value = props.initialData?.skills ? [...props.initialData.skills] : []
@@ -1234,6 +1254,8 @@ const handleSave = () => {
...item,
description: item.description.map(d => ({ ...d })),
})) })
} else if (props.module === 'portfolio') {
emit('save', { portfolioUrl: portfolioUrl.value })
} else if (props.module === 'skills') {
emit('save', { skills: [...skillsList.value] })
} else if (props.module === 'certificate') {