Skip to content

Commit bc8ab52

Browse files
committed
function optimizing
1 parent 662cd45 commit bc8ab52

File tree

3 files changed

+9
-4
lines changed

3 files changed

+9
-4
lines changed

src/api/word.js

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -197,7 +197,7 @@ const learnWordFromList = (wordEn, listName) => {
197197
// 复习模式api
198198
// 复习一个list内的某个单词
199199
// 会根据用户选择的[认识,模糊,不认识]来改变该词的记忆周期和不熟悉度
200-
const reviseWordFromLearned = (wordEn, knowType) => {
200+
const reviseWordFromLearned = (wordEn, knowType, mode) => {
201201
const { user } = store.getters || {}
202202
return new Promise((resolve, reject) => {
203203
if (!user._id) return reject(new Error('user not login'))
@@ -231,7 +231,7 @@ const reviseWordFromLearned = (wordEn, knowType) => {
231231
if (period <= 2) {
232232
operation = {
233233
period: 1,
234-
stageChange: 0.5
234+
stageChange: mode === 'learn' ? 0.5 : 0
235235
}
236236
} else {
237237
operation = {
@@ -350,6 +350,11 @@ const getNextUnitFromList = (listName) => {
350350
wordUnit.push(newWord)
351351
}
352352
}
353+
} else {
354+
wordUnit = wordUnit.sort((a, b) => {
355+
// 30分钟周期优先,因为5分钟周期的单词可能特别多
356+
return (b.period - a.period) || (a.updatedAt - b.updatedAt)
357+
})
353358
}
354359
const nextUnit = wordUnit.splice(0, 7).map((obj) => {
355360
return {

src/pages/Learn.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -176,7 +176,7 @@ export default {
176176
reviseCurrentWord (knowType) {
177177
if (!this.showZh) return
178178
if (this.wordType !== 'learned') return
179-
word.reviseWordFromLearned(this.wordEn, knowType).then(() => {
179+
word.reviseWordFromLearned(this.wordEn, knowType, 'learn').then(() => {
180180
this.getNextWord()
181181
}).catch(err => console.log(err))
182182
},

src/pages/Revise.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -149,7 +149,7 @@ export default {
149149
reviseCurrentWord (knowType) {
150150
if (!this.showZh) return
151151
if (this.wordType !== 'learned') return
152-
word.reviseWordFromLearned(this.wordEn, knowType).then(() => {
152+
word.reviseWordFromLearned(this.wordEn, knowType, 'revise').then(() => {
153153
this.getNextWord()
154154
}).catch(err => console.log(err))
155155
},

0 commit comments

Comments
 (0)