aboutsummaryrefslogtreecommitdiff
path: root/src/control/loading.js
diff options
context:
space:
mode:
authorMistivia <i@mistivia.com>2025-02-11 22:14:02 +0800
committerMistivia <i@mistivia.com>2025-02-11 22:14:02 +0800
commitec6b42fd005a5416371a1cace0c35366aa9f1d58 (patch)
treef37cc65f547cd55cdc40f3c71e7aa2faaa324786 /src/control/loading.js
parent39c98aef0b1077001571a11adfd6b4c80dec256a (diff)
optimize card db loading
Diffstat (limited to 'src/control/loading.js')
-rw-r--r--src/control/loading.js19
1 files changed, 16 insertions, 3 deletions
diff --git a/src/control/loading.js b/src/control/loading.js
index 93114d7..70dd99c 100644
--- a/src/control/loading.js
+++ b/src/control/loading.js
@@ -1,19 +1,32 @@
import { writable } from 'svelte/store';
import { initSearch } from './search';
import { initDeck } from './deck';
-import { setCardDb } from '../data/cardDb';
+import { setCardDb, setAltId } from '../data/cardDb';
let isLoading = writable(true);
async function fetchCardDb() {
try {
- const response = await fetch("https://121.40.137.206/ygo-deck-builder/card_db.json");
+ // load card db
+ let response = await fetch("https://raye.mistivia.com/card_db_parts/index.json");
if (!response.ok) {
throw new Error('Network response was not ok');
}
- const data = await response.json();
+ let data = await response.json();
+ let tasks = data.map((i)=>fetch('https://raye.mistivia.com/card_db_parts/' + i));
+ let datas = await Promise.all(tasks);
+ datas = await Promise.all(datas.map((x) => x.text()));
+ data = JSON.parse(datas.join(''));
setCardDb(data);
+ // load alt id
+ response = await fetch("https://ygocdb.com/api/v0/idChangelog.jsonp");
+ if (!response.ok) {
+ throw new Error('Network response was not ok');
+ }
+ data = await response.json();
+ setAltId(data);
} catch (error) {
+ console.log(error);
alert("加载失败!请刷新重试");
return;
}