Skip to content

Commit b8ef9b4

Browse files
committed
publish 1.2.12
1 parent 7361e5e commit b8ef9b4

File tree

2 files changed

+22
-12
lines changed

2 files changed

+22
-12
lines changed

src/jsx-writer.ts

Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -11,23 +11,19 @@ export default class JsxWriter implements Writer {
1111
add(path: string, url: string, changed: string): void
1212
{
1313
this.items.push(` (() => {
14-
const LazyElement = buildLazyElement(OfflineLoader, RefreshLoader, './pages/${path}/index.tsx',);
15-
return {
16-
path: '${url}',
17-
exact: true,
18-
element: <Suspense fallback={<Loader/>}><LazyElement/></Suspense>,
19-
};
20-
})(),`
14+
const LazyElement = buildLazyElement(OfflineLoader, RefreshLoader, import('./pages/${path}/index.tsx',),);
15+
return buildRoute(LazyElement, Loader, '${ url }');
16+
})(),`
2117
);
2218
}
2319
toString(): string {
2420
return 'import React, {\n' +
2521
' lazy,\n' +
2622
' Suspense,\n' +
2723
'} from \'react\';\n\n' +
28-
'const buildLazyElement = (OfflineLoader, RefreshLoader, path,) => lazy(async() => {\n' +
24+
'const buildLazyElement = (OfflineLoader, RefreshLoader, imp,) => lazy(async() => {\n' +
2925
' try {\n' +
30-
' return await import(path);\n' +
26+
' return await imp;\n' +
3127
' } catch (e) {\n' +
3228
' if (OfflineLoader && ! window.navigator.onLine) {\n' +
3329
' return {default: OfflineLoader};\n' +
@@ -39,6 +35,13 @@ export default class JsxWriter implements Writer {
3935
' throw e;\n' +
4036
' }\n' +
4137
'},);\n\n' +
38+
'const buildRoute = (LazyElement, Loader, url) => {\n' +
39+
' return {\n' +
40+
' path: url,\n' +
41+
' exact: true,\n' +
42+
' element: <Suspense fallback={<Loader/>}><LazyElement/></Suspense>,\n' +
43+
' }\n' +
44+
'};\n\n' +
4245
'export default (' +
4346
' Loader,' +
4447
' RefreshLoader = undefined,' +

src/tsx-writer.ts

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ export default class TsxWriter implements Writer {
1111
add(path: string, url: string, changed: string): void
1212
{
1313
this.items.push(` (() => {
14-
const LazyElement = buildLazyElement(OfflineLoader, RefreshLoader, './pages/${path}/index.tsx',);
14+
const LazyElement = buildLazyElement(OfflineLoader, RefreshLoader, import('./pages/${path}/index.tsx',),);
1515
return {
1616
path: '${url}',
1717
exact: true,
@@ -30,10 +30,10 @@ export default class TsxWriter implements Writer {
3030
'const buildLazyElement = (\n' +
3131
' OfflineLoader: ComponentType|undefined,\n' +
3232
' RefreshLoader: ComponentType|undefined,\n' +
33-
' path: string,\n' +
33+
' imp: Promise<{default: ComponentType|ElementType}>,\n' +
3434
') => lazy(async() => {\n' +
3535
' try {\n' +
36-
' return await import(path);\n' +
36+
' return await imp;\n' +
3737
' } catch (e) {\n' +
3838
' if (OfflineLoader && ! window.navigator.onLine) {\n' +
3939
' return {default: OfflineLoader};\n' +
@@ -45,6 +45,13 @@ export default class TsxWriter implements Writer {
4545
' throw e;\n' +
4646
' }\n' +
4747
'},);\n\n' +
48+
'const buildRoute = (LazyElement: ElementType, Loader: ElementType, url: string) => {\n' +
49+
' return {\n' +
50+
' path: url,\n' +
51+
' exact: true,\n' +
52+
' element: <Suspense fallback={<Loader/>}><LazyElement/></Suspense>,\n' +
53+
' };\n' +
54+
'};\n\n' +
4855
'export default (\n' +
4956
' Loader: ElementType,\n' +
5057
' RefreshLoader: ComponentType|undefined = undefined,\n' +

0 commit comments

Comments
 (0)