К предыдущему
This commit is contained in:
@@ -4,7 +4,7 @@
|
|||||||
<Window @close="close">
|
<Window @close="close">
|
||||||
<template slot="header">
|
<template slot="header">
|
||||||
<span v-show="!loading">Последние {{tableData ? tableData.length : 0}} открытых книг</span>
|
<span v-show="!loading">Последние {{tableData ? tableData.length : 0}} открытых книг</span>
|
||||||
<span v-show="loading"><i class="el-icon-loading"></i> Список загружается</span>
|
<span v-show="loading"><i class="el-icon-loading" style="font-size: 30px"></i> <span style="position: relative; top: -5px">Список загружается</span></span>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<el-table
|
<el-table
|
||||||
|
|||||||
@@ -381,16 +381,16 @@ class Reader extends Vue {
|
|||||||
this.debouncedUpdateRoute();
|
this.debouncedUpdateRoute();
|
||||||
}
|
}
|
||||||
|
|
||||||
async bookManagerEvent(/*eventName*/) {
|
async bookManagerEvent(eventName) {
|
||||||
/*const serverStorage = this.$refs.serverStorage;
|
/*const serverStorage = this.$refs.serverStorage;
|
||||||
if (eventName == 'load-meta-finish') {
|
if (eventName == '') {
|
||||||
serverStorage.init();
|
serverStorage.init();
|
||||||
const result = await bookManager.cleanRecentBooks();
|
const result = await bookManager.cleanRecentBooks();
|
||||||
if (result)
|
if (result)
|
||||||
this.debouncedSaveRecent();
|
this.debouncedSaveRecent();
|
||||||
}
|
}*/
|
||||||
|
|
||||||
if (eventName == 'recent-changed' || eventName == 'save-recent') {
|
if (eventName == 'recent-changed') {
|
||||||
if (this.historyActive) {
|
if (this.historyActive) {
|
||||||
this.$refs.historyPage.updateTableData();
|
this.$refs.historyPage.updateTableData();
|
||||||
}
|
}
|
||||||
@@ -412,12 +412,12 @@ class Reader extends Vue {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (eventName == 'recent-changed') {
|
/*if (eventName == 'recent-changed') {
|
||||||
this.debouncedSaveRecentLast();
|
this.debouncedSaveRecentLast();
|
||||||
} else {
|
} else {
|
||||||
this.debouncedSaveRecent();
|
this.debouncedSaveRecent();
|
||||||
}
|
}*/
|
||||||
}*/
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
get toolBarActive() {
|
get toolBarActive() {
|
||||||
|
|||||||
@@ -44,7 +44,7 @@ class BookManager {
|
|||||||
await utils.sleep(2000);
|
await utils.sleep(2000);
|
||||||
|
|
||||||
let len = await bmMetaStore.length();
|
let len = await bmMetaStore.length();
|
||||||
for (let i = 0; i < len; i++) {
|
for (let i = len - 1; i >= 0; i--) {
|
||||||
const key = await bmMetaStore.key(i);
|
const key = await bmMetaStore.key(i);
|
||||||
const keySplit = key.split('-');
|
const keySplit = key.split('-');
|
||||||
|
|
||||||
@@ -67,7 +67,7 @@ class BookManager {
|
|||||||
|
|
||||||
let key = null;
|
let key = null;
|
||||||
len = await bmRecentStore.length();
|
len = await bmRecentStore.length();
|
||||||
for (let i = 0; i < len; i++) {
|
for (let i = len - 1; i >= 0; i--) {
|
||||||
key = await bmRecentStore.key(i);
|
key = await bmRecentStore.key(i);
|
||||||
if (key) {
|
if (key) {
|
||||||
let r = await bmRecentStore.getItem(key);
|
let r = await bmRecentStore.getItem(key);
|
||||||
@@ -339,6 +339,7 @@ class BookManager {
|
|||||||
await bmRecentStore.setItem('recent-last', this.recentLast);
|
await bmRecentStore.setItem('recent-last', this.recentLast);
|
||||||
|
|
||||||
this.recentChanged = true;
|
this.recentChanged = true;
|
||||||
|
this.emit('recent-changed');
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -355,10 +356,11 @@ class BookManager {
|
|||||||
this.recent[value.key].deleted = 1;
|
this.recent[value.key].deleted = 1;
|
||||||
await bmRecentStore.setItem(value.key, this.recent[value.key]);
|
await bmRecentStore.setItem(value.key, this.recent[value.key]);
|
||||||
|
|
||||||
this.recentLast = null;
|
if (this.recentLast.key == value.key) {
|
||||||
await bmRecentStore.setItem('recent-last', this.recentLast);
|
this.recentLast = null;
|
||||||
|
await bmRecentStore.setItem('recent-last', this.recentLast);
|
||||||
this.recentChanged = true;
|
}
|
||||||
|
this.emit('recent-changed');
|
||||||
}
|
}
|
||||||
|
|
||||||
async cleanRecentBooks() {
|
async cleanRecentBooks() {
|
||||||
@@ -374,6 +376,7 @@ class BookManager {
|
|||||||
|
|
||||||
this.sortedRecentCached = null;
|
this.sortedRecentCached = null;
|
||||||
|
|
||||||
|
this.emit('recent-changed');
|
||||||
return isDel;
|
return isDel;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -394,6 +397,7 @@ class BookManager {
|
|||||||
this.recentLast = result;
|
this.recentLast = result;
|
||||||
bmRecentStore.setItem('recent-last', this.recentLast);//no await
|
bmRecentStore.setItem('recent-last', this.recentLast);//no await
|
||||||
|
|
||||||
|
this.emit('recent-changed');
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -423,8 +427,13 @@ class BookManager {
|
|||||||
}
|
}
|
||||||
|
|
||||||
emit(eventName, value) {
|
emit(eventName, value) {
|
||||||
for (const listener of this.eventListeners)
|
if (this.eventListeners) {
|
||||||
listener(eventName, value);
|
(async() => {
|
||||||
|
await utils.sleep(1);
|
||||||
|
for (const listener of this.eventListeners)
|
||||||
|
listener(eventName, value);
|
||||||
|
})();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user