🐛 Fix garfish cannot get provider
This commit is contained in:
parent
7e1d8fc91a
commit
9a1ddc623b
@ -33,8 +33,19 @@ const router = (basename?: string) => (
|
|||||||
</WellKnownProvider>
|
</WellKnownProvider>
|
||||||
);
|
);
|
||||||
|
|
||||||
|
declare const __GARFISH_EXPORTS__: {
|
||||||
|
provider: Object;
|
||||||
|
registerProvider?: (provider: any) => void;
|
||||||
|
};
|
||||||
|
|
||||||
|
declare global {
|
||||||
|
interface Window {
|
||||||
|
__GARFISH__: boolean;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
export const provider = () => ({
|
export const provider = () => ({
|
||||||
render: ({ dom, basename }: any) => {
|
render: ({ dom, basename }: { dom: any, basename: string }) => {
|
||||||
render(
|
render(
|
||||||
() => router(basename),
|
() => router(basename),
|
||||||
dom.querySelector("#root")
|
dom.querySelector("#root")
|
||||||
@ -44,7 +55,12 @@ export const provider = () => ({
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
// @ts-ignore
|
|
||||||
if (!window.__GARFISH__) {
|
if (!window.__GARFISH__) {
|
||||||
render(router, root!);
|
render(router, root!);
|
||||||
|
} else if (typeof __GARFISH_EXPORTS__ === "object" && __GARFISH_EXPORTS__) {
|
||||||
|
if (__GARFISH_EXPORTS__.registerProvider) {
|
||||||
|
__GARFISH_EXPORTS__.registerProvider(provider);
|
||||||
|
} else {
|
||||||
|
__GARFISH_EXPORTS__.provider = provider;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user