fix(theme): improve local icons load

This commit is contained in:
pengzhanbo 2024-08-13 01:50:00 +08:00
parent f69490af58
commit 4a49b9f027
2 changed files with 9 additions and 7 deletions

View File

@ -105,7 +105,7 @@ export async function onConfigChange(onChange: ChangeEvent) {
if (loader && !loader.changeEvents.includes(onChange)) {
loader.changeEvents.push(onChange)
if (loader.loaded) {
onChange(loader.resolvedConfig)
await onChange(loader.resolvedConfig)
}
}
}
@ -140,9 +140,9 @@ function updateResolvedConfig(app: App, userConfig: ThemeConfig = {}) {
}
}
function runChangeEvents() {
async function runChangeEvents() {
if (loader) {
loader.changeEvents.forEach(fn => fn(loader!.resolvedConfig))
await Promise.all(loader.changeEvents.map(fn => fn(loader!.resolvedConfig)))
}
}

View File

@ -73,11 +73,13 @@ export function plumeTheme(options: PlumeThemeOptions = {}): Theme {
},
onPrepared: async (app) => {
onConfigChange(({ localeOptions }) => {
prepareThemeData(app, localeOptions)
prepareData(app)
onConfigChange(async ({ localeOptions }) => {
await prepareThemeData(app, localeOptions)
await prepareData(app)
})
await waitForConfigLoaded()
const { localeOptions } = await waitForConfigLoaded()
await prepareThemeData(app, localeOptions)
await prepareData(app)
},
onWatched: (app, watchers) => {