mirror of
https://github.com/fawney19/Aether.git
synced 2026-10-11 11:49:50 +08:00
refactor(workspace): enforce layered crate boundaries
This commit is contained in:
@@ -1,3 +1,12 @@
|
||||
import { importWithRetry } from '@/utils/importRetry'
|
||||
|
||||
export const view = <T>(loader: () => Promise<T>) => () => importWithRetry(loader)
|
||||
type PrefetchableRouteLoader<T> = (() => Promise<T>) & {
|
||||
prefetch: () => Promise<T>
|
||||
}
|
||||
|
||||
export const view = <T>(loader: () => Promise<T>): PrefetchableRouteLoader<T> => {
|
||||
const routeLoader = (() => importWithRetry(loader)) as PrefetchableRouteLoader<T>
|
||||
// 预取只做一次原始 import;失败时不得触发导航加载器的清缓存和强刷恢复逻辑。
|
||||
routeLoader.prefetch = loader
|
||||
return routeLoader
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user