Update cwb_lorebookManager

一定程度上可以避免出现获取世界书时TavernHelper未定义导致世界书名无法获取的情况(我必须得说这是个很不优雅的修正方案)
This commit is contained in:
2025-10-07 17:05:31 +08:00
parent 09a39b41fc
commit b5510c60db

View File

@@ -282,6 +282,11 @@ function bindCharCardViewerPopupEvents($popup) {
setNestedValue(collectedData, path, value);
}
});
let localTavernHelper = TavernHelper;
if (!localTavernHelper) {
// TavernHelper 未定义的情况下触发,但是为什么?
(localTavernHelper = window.TavernHelper);
}
const finalContentToSave = buildCustomFormat(collectedData);
const allEntries = await TavernHelper.getLorebookEntries(book);
const entryToUpdate = allEntries.find(e => e.uid === targetUid);
@@ -326,7 +331,11 @@ function bindCharCardViewerPopupEvents($popup) {
order: finalEntryData.order,
hasDepthField: 'depth' in finalEntryData
});
localTavernHelper = TavernHelper;
if (!localTavernHelper) {
// TavernHelper 未定义的情况下触发,但是为什么?
(localTavernHelper = window.TavernHelper);
}
await TavernHelper.setLorebookEntries(book, [finalEntryData]);
showToastr('success', '角色卡已成功保存!');
} catch (error) {
@@ -353,6 +362,11 @@ export async function showCharCardViewerPopup() {
bindCharCardViewerPopupEvents($(`#${CHAR_CARD_VIEWER_POPUP_ID}`));
return;
}
let localTavernHelper = TavernHelper;
if (!localTavernHelper) {
// TavernHelper 未定义的情况下触发,但是为什么?
(localTavernHelper = window.TavernHelper);
}
const allEntries = await TavernHelper.getLorebookEntries(book);
let currentChatId = state.currentChatFileIdentifier;