Skip to content

Commit 8e92df9

Browse files
authored
wip
1 parent e92a36c commit 8e92df9

File tree

3 files changed

+27
-7
lines changed

3 files changed

+27
-7
lines changed

apps/nuxt/app/pages/(words)/practice-words/[id].vue

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -844,14 +844,14 @@ useEvents([
844844
<template>
845845
<PracticeLayout v-loading="loading" panelLeft="var(--word-panel-margin-left)">
846846
<template v-slot:practice>
847-
<div class="practice-word mb-50">
847+
<div class="practice-word">
848848
<WordMarkPickList
849849
v-if="settingStore.wordPracticeType === WordPracticeType.Identify && data.wrongWords.length === 0"
850850
:words="data.words"
851851
@complete="onWordMarkPickComplete"
852852
/>
853853

854-
<template v-else>
854+
<div class="mb-50" v-else>
855855
<!-- 前后单词-->
856856
<div
857857
class="fixed z-1 top-4 w-full"
@@ -893,7 +893,7 @@ useEvents([
893893
@skip="skip"
894894
@toggle-simple="toggleWordSimpleWrapper"
895895
/>
896-
</template>
896+
</div>
897897
</div>
898898
</template>
899899
<template v-slot:panel>

packages/core/src/components/word/TypeWord.vue

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -175,7 +175,9 @@ function know(e) {
175175
function mastered(e) {
176176
if (settingStore.wordPracticeType === WordPracticeType.Identify) {
177177
emit('mastered')
178+
return
178179
}
180+
onTyping(e)
179181
}
180182
181183
function unknown(e) {
@@ -501,6 +503,7 @@ useEvents([
501503
[ShortcutKey.KnowWord, know],
502504
[ShortcutKey.UnknownWord, unknown],
503505
[ShortcutKey.MasteredWord, mastered],
506+
[ShortcutKey.ChooseD, onTyping],
504507
])
505508
506509
const notice = $computed(() => {

packages/core/src/components/word/WordMarkPickList.vue

Lines changed: 21 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -76,8 +76,9 @@ function onComplete() {
7676
</script>
7777

7878
<template>
79-
<div class="word-mark-pick-list text-xl flex flex-col gap-3 w-full mt-10">
80-
<div class="flex flex-wrap gap-2">
79+
<div class="word-mark-pick-list text-xl flex flex-col gap-3 w-full pt-10">
80+
<div class="flex flex-wrap gap-2 items-center">
81+
<div>标记分类:</div>
8182
<button
8283
v-for="mode in ['know', 'unknown', 'mastered'] as const"
8384
:key="mode"
@@ -89,6 +90,12 @@ function onComplete() {
8990
{{ modeLabels[mode] }}
9091
</button>
9192
</div>
93+
<div>
94+
说明:点词标记,重复点击取消;切换分类继续标记。未标记与“不认识”将进入后续练习。
95+
</div>
96+
<div class="text-sm color-[var(--color-font-3)]">
97+
小提示:如果认识的多,建议切换为“不认识”进行标记;反之,切换为“我认识”进行标记
98+
</div>
9299

93100
<div class="word-grid" role="list" aria-label="单词列表">
94101
<div
@@ -104,12 +111,16 @@ function onComplete() {
104111
</div>
105112

106113
<div class="center pt-1">
107-
<BaseButton type="primary" size="large" @click="onComplete">完成</BaseButton>
114+
<BaseButton type="primary" size="large" @click="onComplete">标记完成</BaseButton>
108115
</div>
109116
</div>
110117
</template>
111118

112119
<style scoped lang="scss">
120+
.word-mark-pick-list {
121+
max-height: calc(100vh - 12rem);
122+
}
123+
113124
.mode-btn {
114125
padding: 0.35rem 0.85rem;
115126
border-radius: 0.375rem;
@@ -123,12 +134,18 @@ function onComplete() {
123134
border-color: var(--el-color-primary, #646cff);
124135
}
125136
&.know.active {
137+
background: rgba(34, 197, 94, 0.14);
138+
border-color: rgba(34, 197, 94, 0.35);
126139
color: #15803d;
127140
}
128141
&.unknown.active {
142+
background: rgba(239, 68, 68, 0.14);
143+
border-color: rgba(239, 68, 68, 0.35);
129144
color: #b91c1c;
130145
}
131146
&.mastered.active {
147+
background: rgba(59, 130, 246, 0.14);
148+
border-color: rgba(59, 130, 246, 0.35);
132149
color: #1d4ed8;
133150
}
134151
}
@@ -137,10 +154,10 @@ function onComplete() {
137154
display: flex;
138155
flex-wrap: wrap;
139156
gap: 1rem;
140-
max-height: min(80vh, 36rem);
141157
overflow: auto;
142158
align-content: flex-start;
143159
padding: 0.125rem;
160+
flex: 1;
144161
-webkit-overflow-scrolling: touch;
145162
}
146163

0 commit comments

Comments
 (0)