fix(flashcards): TDZ — _collLabels объявлен до init(), а был после
let _collLabels стоял после bootstrap init()-loadDecks(), который читает его синхронно, отсюда ReferenceError (доступ до инициализации). Перенёс объявление в верхний блок состояния (до IIFE), убрал позднее повторное let. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -694,6 +694,7 @@ let _curDeckReadonly = false; // общая колода (не вла
|
|||||||
let _shareData = { shares: [], classes: [], students: [] };
|
let _shareData = { shares: [], classes: [], students: [] };
|
||||||
let _shareTab = 'class';
|
let _shareTab = 'class';
|
||||||
let _shareSet = new Set(); // ключи 'class:<id>' / 'user:<id>' текущих назначений
|
let _shareSet = new Set(); // ключи 'class:<id>' / 'user:<id>' текущих назначений
|
||||||
|
let _collLabels = null; // { collectionKey: label } для заголовков папок-коллекций (объявлено ДО init, иначе TDZ)
|
||||||
|
|
||||||
(async () => {
|
(async () => {
|
||||||
/* ── auth ── */
|
/* ── auth ── */
|
||||||
@@ -747,7 +748,6 @@ function bindStudyKeys() {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
let _collLabels = null; // { collectionKey: label } для заголовков папок-коллекций
|
|
||||||
async function loadDecks() {
|
async function loadDecks() {
|
||||||
const [decks, stats, tracks] = await Promise.all([
|
const [decks, stats, tracks] = await Promise.all([
|
||||||
LS.api('/api/flashcards/decks').catch(()=>({decks:[]})),
|
LS.api('/api/flashcards/decks').catch(()=>({decks:[]})),
|
||||||
|
|||||||
Reference in New Issue
Block a user