ssr-plugin-react 6.2.42 → 6.2.43
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.turbo/turbo-build.log +3 -3
- package/CHANGELOG.md +132 -0
- package/cjs/entry/client-entry.d.ts.map +1 -1
- package/cjs/entry/client-entry.js +20 -14
- package/cjs/entry/client-entry.js.map +1 -1
- package/cjs/entry/server-entry.d.ts +2 -1
- package/cjs/entry/server-entry.d.ts.map +1 -1
- package/cjs/entry/server-entry.js +15 -4
- package/cjs/entry/server-entry.js.map +1 -1
- package/esm/entry/client-entry.d.ts.map +1 -1
- package/esm/entry/client-entry.js +20 -14
- package/esm/entry/client-entry.js.map +1 -1
- package/esm/entry/server-entry.d.ts +2 -1
- package/esm/entry/server-entry.d.ts.map +1 -1
- package/esm/entry/server-entry.js +15 -4
- package/esm/entry/server-entry.js.map +1 -1
- package/package.json +1 -1
- package/src/entry/client-entry.tsx +21 -23
- package/src/entry/server-entry.tsx +17 -11
package/.turbo/turbo-build.log
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
ssr-plugin-react:build: cache hit, replaying output
|
|
1
|
+
ssr-plugin-react:build: cache hit, replaying output 70f6c6c4650595c4
|
|
2
2
|
ssr-plugin-react:build:
|
|
3
|
-
ssr-plugin-react:build: > ssr-plugin-react@6.2.
|
|
3
|
+
ssr-plugin-react:build: > ssr-plugin-react@6.2.43 build /home/runner/work/ssr/ssr/packages/plugin-react
|
|
4
4
|
ssr-plugin-react:build: > concurrently "tsc -p ./tsconfig.cjs.json " " tsc -p ./tsconfig.esm.json"
|
|
5
5
|
ssr-plugin-react:build:
|
|
6
|
-
ssr-plugin-react:build: [0] tsc -p ./tsconfig.cjs.json exited with code 0
|
|
7
6
|
ssr-plugin-react:build: [1] tsc -p ./tsconfig.esm.json exited with code 0
|
|
7
|
+
ssr-plugin-react:build: [0] tsc -p ./tsconfig.cjs.json exited with code 0
|
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,135 @@
|
|
|
1
|
+
## [6.2.43](https://github.com/zhangyuang/ssr/compare/v6.2.8...v6.2.43) (2022-08-05)
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
### Bug Fixes
|
|
5
|
+
|
|
6
|
+
* add build:publish disable sourcemap ([ef82b29](https://github.com/zhangyuang/ssr/commit/ef82b298ddf19b72b130d76c33bfbca67339b139))
|
|
7
|
+
* add checkContains ([6cae390](https://github.com/zhangyuang/ssr/commit/6cae390785e9f0c7aeb1574322a840a7569a6f8e))
|
|
8
|
+
* add clientBuildEnd event ([f081d4b](https://github.com/zhangyuang/ssr/commit/f081d4b5cf7b826967fc3013ff625adb871bdcb1))
|
|
9
|
+
* add pinia instance in params in ssr ([6cbaacf](https://github.com/zhangyuang/ssr/commit/6cbaacfea35cb7c92463ec99975ab709b6f5ba57))
|
|
10
|
+
* add prefix output to window.prefix in csr mode ([#197](https://github.com/zhangyuang/ssr/issues/197)) ([479bb3d](https://github.com/zhangyuang/ssr/commit/479bb3df67d7da5635939a4219b5f5f9a40b5508))
|
|
11
|
+
* add watchCount ([de1cef1](https://github.com/zhangyuang/ssr/commit/de1cef1db9193bdbbc5a4ec330e04ebcb29dd25a))
|
|
12
|
+
* build html ([83be7be](https://github.com/zhangyuang/ssr/commit/83be7be185985a5dcbb9b8e846a5e2b14b94c1b0))
|
|
13
|
+
* build html ([59a8d7f](https://github.com/zhangyuang/ssr/commit/59a8d7f31bed703601e753d02db49ea5a0f93054))
|
|
14
|
+
* ci ([57e713f](https://github.com/zhangyuang/ssr/commit/57e713f1f96b4ceb893837c15c6032b23a0b1a4c))
|
|
15
|
+
* clearlastAsyncChunkMap ([81a605d](https://github.com/zhangyuang/ssr/commit/81a605d79786609c063cba62aeec971cc38ffe17))
|
|
16
|
+
* core-js types ([036bf38](https://github.com/zhangyuang/ssr/commit/036bf385d8ed804dfc2e46ef4484f7bf499d7cdb))
|
|
17
|
+
* css chunkname ([4576d7b](https://github.com/zhangyuang/ssr/commit/4576d7b8ffce5b2e32624cae8c19d81235ad1636))
|
|
18
|
+
* default splitChunks options ([20fb45f](https://github.com/zhangyuang/ssr/commit/20fb45f5567b4cc8788fa93d9e1772bf6695e723))
|
|
19
|
+
* don't throw error when load module failed ([2e5d077](https://github.com/zhangyuang/ssr/commit/2e5d077848dc10998a04fcccccc7c745c0d1bea7))
|
|
20
|
+
* dynamic render ([7a9157c](https://github.com/zhangyuang/ssr/commit/7a9157cab3a1de354629345961d895b5c29d86c3))
|
|
21
|
+
* entryList in vite build ([3c928f9](https://github.com/zhangyuang/ssr/commit/3c928f962d490bcc5b352ffe95670c3bf7bf439b))
|
|
22
|
+
* f.koa.yml ([5f1012a](https://github.com/zhangyuang/ssr/commit/5f1012a0d5f21a3ecf796de108d5cdab4a3b2e25))
|
|
23
|
+
* fetch data after use pinia ([3d1a3f4](https://github.com/zhangyuang/ssr/commit/3d1a3f41d6f5c001c4e233aba25608147fdae2a2))
|
|
24
|
+
* fix config htmlTemplate read ([#191](https://github.com/zhangyuang/ssr/issues/191)) ([8c3e12b](https://github.com/zhangyuang/ssr/commit/8c3e12b6adb64b7898bc6232d980e72c5353026b))
|
|
25
|
+
* generate html add all chunk css ([7a1be47](https://github.com/zhangyuang/ssr/commit/7a1be479b908a488e695385097cc41d609955bd0))
|
|
26
|
+
* inject clientPrefix in csr ([33b15ac](https://github.com/zhangyuang/ssr/commit/33b15acb36f25fce183b01457e32f9e622462d8e))
|
|
27
|
+
* judge isVite in core ([7c175a2](https://github.com/zhangyuang/ssr/commit/7c175a2513673e53840beb9904cfe39dbb149ba8))
|
|
28
|
+
* loadConfig ([8960c84](https://github.com/zhangyuang/ssr/commit/8960c84eea7b384d59ebfe6424813afec433b3f8))
|
|
29
|
+
* lock babel-plugin-import ([72c3041](https://github.com/zhangyuang/ssr/commit/72c3041bf61a1fc9b7593df1fdb6c4dc850c6bbd))
|
|
30
|
+
* lock vite version in plugin-react ([e015b75](https://github.com/zhangyuang/ssr/commit/e015b750c60dcae9a4a7e5fe14937177b80367ca))
|
|
31
|
+
* manualChunks ([95e16d9](https://github.com/zhangyuang/ssr/commit/95e16d9cbc6a8e6fc820e3419b9ef333e65bfdf6))
|
|
32
|
+
* parseRoutes in react close [#227](https://github.com/zhangyuang/ssr/issues/227) ([51c506c](https://github.com/zhangyuang/ssr/commit/51c506c39d6dc9dcf1b677b6d3363085ebf3e82b))
|
|
33
|
+
* plugin-react without dynamic mode ([487cc84](https://github.com/zhangyuang/ssr/commit/487cc84188640aab13c27214df758da0d19e4368))
|
|
34
|
+
* postinstall ([fef24ba](https://github.com/zhangyuang/ssr/commit/fef24bada3498f162efd0bdd09921503e44ad21a))
|
|
35
|
+
* postinstall get correct path ([b3d1951](https://github.com/zhangyuang/ssr/commit/b3d1951b7537c5954fd040797fc0011a1d4439d7))
|
|
36
|
+
* react router basename in server entry ([#212](https://github.com/zhangyuang/ssr/issues/212)) ([28072f7](https://github.com/zhangyuang/ssr/commit/28072f7bdfc489a27599b636db33bdea18ef4c18))
|
|
37
|
+
* react static router basename close [#228](https://github.com/zhangyuang/ssr/issues/228) ([542dc60](https://github.com/zhangyuang/ssr/commit/542dc603be7d4b2ce88dc6bb2d9203aa5094bfb8))
|
|
38
|
+
* read manifest in dev mode ([9c577a4](https://github.com/zhangyuang/ssr/commit/9c577a4a66c79e301988ff40ffb9b06e626a0ad6))
|
|
39
|
+
* Recommended to specify used minor core-js version ([#207](https://github.com/zhangyuang/ssr/issues/207)) ([9db0424](https://github.com/zhangyuang/ssr/commit/9db0424e5e7ad1728d40665d01740f7a2c1c4b70))
|
|
40
|
+
* release utils ([1b9c56b](https://github.com/zhangyuang/ssr/commit/1b9c56bc904faa0cae39fb329c02b5d159d69872))
|
|
41
|
+
* remove writeEmitter ([77a5ac8](https://github.com/zhangyuang/ssr/commit/77a5ac8e9338424fbca77a5560c4c91ed405ac09))
|
|
42
|
+
* restore webpack split chunks config ([2f7ae67](https://github.com/zhangyuang/ssr/commit/2f7ae67ecef863d56752a4a4e1fa7a75ec0756ed))
|
|
43
|
+
* revert vite build ([210ddea](https://github.com/zhangyuang/ssr/commit/210ddea22fc0639f60fcee96bdf47463d188e18f))
|
|
44
|
+
* set defaulr hmr protocol to ws ([0d14c1c](https://github.com/zhangyuang/ssr/commit/0d14c1cae2b10dfea262c76794fd0a4ebca3f8ae))
|
|
45
|
+
* setGenerateMap ([c2ce03f](https://github.com/zhangyuang/ssr/commit/c2ce03f172b937d2a3c86e109bed524c3ce07910))
|
|
46
|
+
* setGenerateMap ([040cec5](https://github.com/zhangyuang/ssr/commit/040cec58a29064698b2b4ef909be3d3de42e3b80))
|
|
47
|
+
* ssr start --optimize ([42bb399](https://github.com/zhangyuang/ssr/commit/42bb39931001af5ad19e1f42b7912ffa08c47e71))
|
|
48
|
+
* update parse logic to non-render file ([6140204](https://github.com/zhangyuang/ssr/commit/61402041ba76dfd61b9d74f0d79490603271cbcc))
|
|
49
|
+
* update preinstall ([2b4b869](https://github.com/zhangyuang/ssr/commit/2b4b869c28b83b414bef10260e5561bc3773cea9))
|
|
50
|
+
* userConfig ([b385333](https://github.com/zhangyuang/ssr/commit/b3853337623dee41907cc7465b0eb27dd9395c90))
|
|
51
|
+
* useStore types ([3532bfb](https://github.com/zhangyuang/ssr/commit/3532bfbef9981da300abf748a98925b59cc2c71d))
|
|
52
|
+
* vite build logic close [#221](https://github.com/zhangyuang/ssr/issues/221) ([297e2c0](https://github.com/zhangyuang/ssr/commit/297e2c0e5ad6609ce8cd3954a5886387f84343e6))
|
|
53
|
+
* vite mode config.base ([c64aa1a](https://github.com/zhangyuang/ssr/commit/c64aa1ab9d88cdfd7df1cce6feb43b191847e666))
|
|
54
|
+
* **vite:** vite config base use publicPath first in client ([#192](https://github.com/zhangyuang/ssr/issues/192)) ([ef5b145](https://github.com/zhangyuang/ssr/commit/ef5b1451850441b0748727d09144e6e671f71208))
|
|
55
|
+
* void chunk logic ([ad694a1](https://github.com/zhangyuang/ssr/commit/ad694a1275f12560360f4e73c3466cce39b3e878))
|
|
56
|
+
* vue3 package.json ([c49fb14](https://github.com/zhangyuang/ssr/commit/c49fb146fc6ba79ffbeee567e334b560ffecbcac))
|
|
57
|
+
* webpack optimize ([#226](https://github.com/zhangyuang/ssr/issues/226)) ([f06a227](https://github.com/zhangyuang/ssr/commit/f06a227f3b221aa575a5c04ad7cd3532ffcf6914))
|
|
58
|
+
* whitList concat userconfig ([fdd971a](https://github.com/zhangyuang/ssr/commit/fdd971ab11aebc0f348d789e758183b877e791af))
|
|
59
|
+
* whitList concat userconfig ([e2328f8](https://github.com/zhangyuang/ssr/commit/e2328f87f5cfc18c9a30867e4f6e18d0df5c1ba3))
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
### Features
|
|
63
|
+
|
|
64
|
+
* optimize code remove disableClientRender fix vite ([eeff477](https://github.com/zhangyuang/ssr/commit/eeff4770f8d9ff400289cf4d1ca4dd32883be108))
|
|
65
|
+
* add .vue to defaultWhiteList ([dbabfa2](https://github.com/zhangyuang/ssr/commit/dbabfa2864ec0a5487aadc31286da5630a8603fc))
|
|
66
|
+
* add `turbo` ([#196](https://github.com/zhangyuang/ssr/issues/196)) ([2be17bb](https://github.com/zhangyuang/ssr/commit/2be17bba5d80610b97b3813b3d4fe9579f88e5c3))
|
|
67
|
+
* add checkBuildEnd ([fa37147](https://github.com/zhangyuang/ssr/commit/fa371479d6f6d609d4ae6b9bf160ea4966255e09))
|
|
68
|
+
* add optimize logic in server plugin ([5f5d5c3](https://github.com/zhangyuang/ssr/commit/5f5d5c3f482b580efcb3fe06b984051a0bec1975))
|
|
69
|
+
* add parseRoutes watcher when files changed remove webpack-chain in ([a499654](https://github.com/zhangyuang/ssr/commit/a49965470e2b1e1d9744b59baede586bdd5fff90))
|
|
70
|
+
* add splitPriorityMap ([11e3888](https://github.com/zhangyuang/ssr/commit/11e38888d820e3be34180360373310fdbf497a67))
|
|
71
|
+
* add ssr-common-utils ([c12a283](https://github.com/zhangyuang/ssr/commit/c12a283e0133285402f4af5cd0346b84f2aaf098))
|
|
72
|
+
* add ssr-serialize-javascript code optimize ([41bb14d](https://github.com/zhangyuang/ssr/commit/41bb14d31efd89d4a85d5220544d2f7a3883e1a3))
|
|
73
|
+
* add usePinia ([3253e83](https://github.com/zhangyuang/ssr/commit/3253e83b8b3c1d86bcf83e0dce74e03f5704706d))
|
|
74
|
+
* add useStore ([b786b8c](https://github.com/zhangyuang/ssr/commit/b786b8cc314ce9d45d56ac68c93020209643b208))
|
|
75
|
+
* add vendorMap in vite build ([a084620](https://github.com/zhangyuang/ssr/commit/a0846207fc3c5092927f5fb57480c9a669f767e2))
|
|
76
|
+
* add vite entry list ([9530443](https://github.com/zhangyuang/ssr/commit/95304435b294400e67112ba59544df2be2a31b8f))
|
|
77
|
+
* add viteConfig.ssr.external ([2035967](https://github.com/zhangyuang/ssr/commit/2035967def8d2f9d48997d6994efd8ffbb4fd382))
|
|
78
|
+
* add writeEmitter ([195f3ca](https://github.com/zhangyuang/ssr/commit/195f3cad7a9ff41ecb54ec151e3fe511665e8d62))
|
|
79
|
+
* babelExtraModule support vue ([06251e7](https://github.com/zhangyuang/ssr/commit/06251e716678e1f882f06f68f72c518a341de0d7))
|
|
80
|
+
* babelExtraModule support vue ([513073d](https://github.com/zhangyuang/ssr/commit/513073ddcecbb728d34eae233686a93d63355e00))
|
|
81
|
+
* build html ([9a1ca75](https://github.com/zhangyuang/ssr/commit/9a1ca754f147c080ca93211defde5f7cf8f7c259))
|
|
82
|
+
* change splitChunks from all to initial ([f0de225](https://github.com/zhangyuang/ssr/commit/f0de22566ff7769b02d3b7d7b75bde12a5b2c28a))
|
|
83
|
+
* concat arr when vendorMap has same length ([0a5a814](https://github.com/zhangyuang/ssr/commit/0a5a814a72aebe2d179a72bf1eb7966a977e167d))
|
|
84
|
+
* don't cover viteConfig.build ([02aef3b](https://github.com/zhangyuang/ssr/commit/02aef3b44c1cde54d8586f0d73defdcdc7ce0ad3))
|
|
85
|
+
* don't emit void chunk ([dc5d8b7](https://github.com/zhangyuang/ssr/commit/dc5d8b742a9f97f2be38d9da633b9d1768b6710b))
|
|
86
|
+
* don't write file to dist in webpack optimize ([c1cbce9](https://github.com/zhangyuang/ssr/commit/c1cbce927716dfa4fca052b1d54448e87771b1f6))
|
|
87
|
+
* generate html file support inject prefix ([02741ee](https://github.com/zhangyuang/ssr/commit/02741eeda778eec26504c5e7e2c074b1d2402e83))
|
|
88
|
+
* make splitPriorityMap consistent ([b7c8afb](https://github.com/zhangyuang/ssr/commit/b7c8afb7940b7f6f863531277b224f234292d62b))
|
|
89
|
+
* move all client files at same folder in webpack ([d6d623f](https://github.com/zhangyuang/ssr/commit/d6d623f29ba4aa10d85c0561c8f6f88ec3bb2290))
|
|
90
|
+
* move react-router to external ([0a58570](https://github.com/zhangyuang/ssr/commit/0a585705fb66d9f3a4a59008f1f3e82b23f05fae))
|
|
91
|
+
* new vite build logic ([4420935](https://github.com/zhangyuang/ssr/commit/4420935ee6ced6dd77a120998bdb6377d3df1780))
|
|
92
|
+
* optimize customescript ([f374760](https://github.com/zhangyuang/ssr/commit/f3747608d4684576875968394eca6315e2fa8dd1))
|
|
93
|
+
* plugin-midway remove luckyeye ([bb4b11f](https://github.com/zhangyuang/ssr/commit/bb4b11f289d060c8b332cf610bb6d8c4cf25142b))
|
|
94
|
+
* plugin-react add react-refresh, remove module.hot ([7bee211](https://github.com/zhangyuang/ssr/commit/7bee211ddfefaef688713f505756e1155320b844))
|
|
95
|
+
* remove clientBuildEnd events ([44cc355](https://github.com/zhangyuang/ssr/commit/44cc355f0dc060ae58581488a1fc1573ebad1ba5))
|
|
96
|
+
* remove getlocalmodules update getuserconfig ([172adde](https://github.com/zhangyuang/ssr/commit/172adde96395fc3b3dd489fa8e529e21a0c226f4))
|
|
97
|
+
* remove plugin-nestjs deploy ([0ba16f8](https://github.com/zhangyuang/ssr/commit/0ba16f861b6dc679f216cbbcc931de75cdf79501))
|
|
98
|
+
* render add generic function overloading ([f03897f](https://github.com/zhangyuang/ssr/commit/f03897f07844d8fd5f9d2cf3eeef1a726da794bf))
|
|
99
|
+
* set argv.ssl for plugin-midway ([#213](https://github.com/zhangyuang/ssr/issues/213)) ([65c1cb9](https://github.com/zhangyuang/ssr/commit/65c1cb9da0772e915162dcd9b03fad2fada22b40))
|
|
100
|
+
* support dynamicFile ([c11781c](https://github.com/zhangyuang/ssr/commit/c11781c846651bd8027c8d5b9821163181f8629b))
|
|
101
|
+
* support htmlTemplate ([b240811](https://github.com/zhangyuang/ssr/commit/b2408114a6314ef4f96f4c06159d18fc6d881a57))
|
|
102
|
+
* support link preload ([9a6abf3](https://github.com/zhangyuang/ssr/commit/9a6abf3fcdae8f02928731018e8aa7370f804d82))
|
|
103
|
+
* support more vite config ([3ac5edc](https://github.com/zhangyuang/ssr/commit/3ac5edc605b59a1e1927fad0838cc730aba82b59))
|
|
104
|
+
* support props.ssrApp in vue3 ([8985037](https://github.com/zhangyuang/ssr/commit/898503753cbe69187d27f91c70dff3f4cd4a0b2a))
|
|
105
|
+
* support vite + wasm vite otherConfig ([7e65899](https://github.com/zhangyuang/ssr/commit/7e658998bc404c28374645c3a8a433a3db171f36))
|
|
106
|
+
* support vuex store options ([9bed529](https://github.com/zhangyuang/ssr/commit/9bed5299a59386e0cd70abbb8a66eca6090ed400))
|
|
107
|
+
* support wasm in webpack, lock postcss-preset-env version ([8ad50a4](https://github.com/zhangyuang/ssr/commit/8ad50a41227a8eb5395c955e5deeda7eb56036b0))
|
|
108
|
+
* support wildcare params ([c5cde18](https://github.com/zhangyuang/ssr/commit/c5cde18566365f9d3bbc81691c0ca5e7b72607d4))
|
|
109
|
+
* update chainBaseConfig ([51c1fbe](https://github.com/zhangyuang/ssr/commit/51c1fbe5a645d4701c7ebc035083096d50301891))
|
|
110
|
+
* update extraJsOrder extraCssOrder ([cd5ca99](https://github.com/zhangyuang/ssr/commit/cd5ca99a686ea565020500a6c4f77e310b422ce3))
|
|
111
|
+
* update fetch params ([70aedaa](https://github.com/zhangyuang/ssr/commit/70aedaa82a69552e22af1998bf1c2de8e30e0283))
|
|
112
|
+
* update midway deploy ([a473c59](https://github.com/zhangyuang/ssr/commit/a473c599657df42b4bf7a59f248b3c7c33907657))
|
|
113
|
+
* update plugin-vue3 support call pinia in fetch.ts ([958fdc7](https://github.com/zhangyuang/ssr/commit/958fdc787ab615593f3114a6bf2c6cea4823afc2))
|
|
114
|
+
* update ssr-common-utils ([c7cadc1](https://github.com/zhangyuang/ssr/commit/c7cadc14922383f8fdaa6c76b4dbe9c220d0ac72))
|
|
115
|
+
* update turbo ([9ee14f5](https://github.com/zhangyuang/ssr/commit/9ee14f59359187e35f4ef990998846ac3847347b))
|
|
116
|
+
* update vite config ([0596573](https://github.com/zhangyuang/ssr/commit/05965738898d96d53dedbd41746b8100dcc5653b))
|
|
117
|
+
* update vue example inject content for consistent ([c863c01](https://github.com/zhangyuang/ssr/commit/c863c011fc06ceed5d204d3d96eea29cf7c7d4b8))
|
|
118
|
+
* upgrade midway example to v3 ([572f7c5](https://github.com/zhangyuang/ssr/commit/572f7c5d171346cc17f5f6cdebe33aee76e0c146))
|
|
119
|
+
* upgrade vite@2.9.13 move ssr-hoc-react to noOptimize close [#216](https://github.com/zhangyuang/ssr/issues/216) ([842b8af](https://github.com/zhangyuang/ssr/commit/842b8af830927731a2fb35d77dde7c2a051c3670))
|
|
120
|
+
* upgrade vue-router^2 to vue-router^3 ([283ed9e](https://github.com/zhangyuang/ssr/commit/283ed9ec4f6d8a622bcc3599ca33f9b0885ed3e5))
|
|
121
|
+
* use pnpm replace yarn workspace and lerna ([#186](https://github.com/zhangyuang/ssr/issues/186)) ([d578506](https://github.com/zhangyuang/ssr/commit/d578506160712847c1dd021b7759c7e9ff3c03e8))
|
|
122
|
+
* use ssr-vite-plugin-style-import ([1c8cac2](https://github.com/zhangyuang/ssr/commit/1c8cac2ff9bb7ec0132c23203efa5c85a8c7492e))
|
|
123
|
+
* use terser minify plugin-react server bundle ([0a3c7fe](https://github.com/zhangyuang/ssr/commit/0a3c7fe61908fe24bcb2d8c6394daf2afd18ba82))
|
|
124
|
+
* vite build extra vendor ([#210](https://github.com/zhangyuang/ssr/issues/210)) ([3eb6e4f](https://github.com/zhangyuang/ssr/commit/3eb6e4fde592a6ef59a7fd6790b56e38c187960d))
|
|
125
|
+
* vite build extra vendor and client-entry ([#211](https://github.com/zhangyuang/ssr/issues/211)) ([41fb1fe](https://github.com/zhangyuang/ssr/commit/41fb1fef04a1c954828d42e4dfe40445bcea444f))
|
|
126
|
+
* vite mode support splitChunk dynamic module ([4157fc2](https://github.com/zhangyuang/ssr/commit/4157fc24176b69c9815450b3623742995feae144))
|
|
127
|
+
* vue3 add default isCustomElement ([44ab37c](https://github.com/zhangyuang/ssr/commit/44ab37c27908b5927578d78a834d2404d42c70dd))
|
|
128
|
+
* vue3 support pinia, replace props.fetchData to props.reactiveFetchData in vue2/3 ([eabcb50](https://github.com/zhangyuang/ssr/commit/eabcb50729517b7cb649729d52356a06a010a8fc))
|
|
129
|
+
* webpack build optimize ([#222](https://github.com/zhangyuang/ssr/issues/222)) ([217dd38](https://github.com/zhangyuang/ssr/commit/217dd388c70d2a7d93d8eeec64a3d26136afe51b))
|
|
130
|
+
|
|
131
|
+
|
|
132
|
+
|
|
1
133
|
## [6.2.42](https://github.com/zhangyuang/ssr/compare/v6.2.8...v6.2.42) (2022-08-05)
|
|
2
134
|
|
|
3
135
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client-entry.d.ts","sourceRoot":"","sources":["../../src/entry/client-entry.tsx"],"names":[],"mappings":"AAWA,QAAA,MAAM,YAAY,QAAa,QAAQ,IAAI,
|
|
1
|
+
{"version":3,"file":"client-entry.d.ts","sourceRoot":"","sources":["../../src/entry/client-entry.tsx"],"names":[],"mappings":"AAWA,QAAA,MAAM,YAAY,QAAa,QAAQ,IAAI,CA8B1C,CAAA;AAID,OAAO,EACL,YAAY,EACb,CAAA"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.clientRender = void 0;
|
|
4
|
-
const
|
|
4
|
+
const react_1 = require("react");
|
|
5
5
|
const ReactDOM = require("react-dom");
|
|
6
6
|
const react_router_dom_1 = require("react-router-dom");
|
|
7
7
|
const ssr_client_utils_1 = require("ssr-client-utils");
|
|
@@ -16,19 +16,25 @@ const clientRender = async () => {
|
|
|
16
16
|
// 客户端渲染||hydrate
|
|
17
17
|
const baseName = (0, ssr_client_utils_1.isMicro)() ? window.clientPrefix : window.prefix;
|
|
18
18
|
const routes = await (0, ssr_client_utils_1.preloadComponent)(FeRoutes, baseName);
|
|
19
|
-
ReactDOM[window.__USE_SSR__ ? 'hydrate' : 'render'](
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
19
|
+
ReactDOM[window.__USE_SSR__ ? 'hydrate' : 'render']((0, react_1.createElement)(react_router_dom_1.BrowserRouter, {
|
|
20
|
+
basename: baseName
|
|
21
|
+
}, (0, react_1.createElement)(context_1.AppContext, {
|
|
22
|
+
children: (0, react_1.createElement)(react_router_dom_1.Switch, null, (0, react_1.createElement)(IApp, null, (0, react_1.createElement)(react_router_dom_1.Switch, null, // 使用高阶组件wrapComponent使得csr首次进入页面以及csr/ssr切换路由时调用getInitialProps
|
|
23
|
+
routes.map(item => {
|
|
24
|
+
const { fetch, component, path } = item;
|
|
25
|
+
component.fetch = fetch;
|
|
26
|
+
component.layoutFetch = layoutFetch;
|
|
27
|
+
const WrappedComponent = (0, ssr_hoc_react_1.wrapComponent)(component);
|
|
28
|
+
return (0, react_1.createElement)(react_router_dom_1.Route, {
|
|
29
|
+
exact: true,
|
|
30
|
+
key: path,
|
|
31
|
+
path: path,
|
|
32
|
+
render: () => (0, react_1.createElement)(WrappedComponent, {
|
|
33
|
+
key: location.pathname
|
|
34
|
+
})
|
|
35
|
+
});
|
|
36
|
+
}))))
|
|
37
|
+
})), document.getElementById('app'));
|
|
32
38
|
};
|
|
33
39
|
exports.clientRender = clientRender;
|
|
34
40
|
clientRender();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client-entry.js","sourceRoot":"","sources":["../../src/entry/client-entry.tsx"],"names":[],"mappings":";;;AAAA
|
|
1
|
+
{"version":3,"file":"client-entry.js","sourceRoot":"","sources":["../../src/entry/client-entry.tsx"],"names":[],"mappings":";;;AAAA,iCAAqC;AACrC,sCAAqC;AACrC,uDAA+D;AAC/D,uDAA4D;AAC5D,iDAA6C;AAE7C,mDAAwC;AACxC,uCAAsC;AAEtC,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,EAAE,GAAG,sBAAyB,CAAA;AAEhE,MAAM,YAAY,GAAG,KAAK,IAAmB,EAAE;IAC7C,MAAM,IAAI,GAAG,GAAG,aAAH,GAAG,cAAH,GAAG,GAAI,UAAU,KAAkB;QAC9C,OAAO,KAAK,CAAC,QAAS,CAAA;IACxB,CAAC,CAAA;IACD,iBAAiB;IACjB,MAAM,QAAQ,GAAG,IAAA,0BAAO,GAAE,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAA;IAChE,MAAM,MAAM,GAAG,MAAM,IAAA,mCAAgB,EAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;IACzD,QAAQ,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CACjD,IAAA,qBAAa,EAAC,gCAAa,EAAE;QAC3B,QAAQ,EAAE,QAAQ;KACnB,EAAE,IAAA,qBAAa,EAAC,oBAAiB,EAAE;QAClC,QAAQ,EAAE,IAAA,qBAAa,EAAC,yBAAM,EAAE,IAAI,EAClC,IAAA,qBAAa,EAAC,IAAW,EAAE,IAAI,EAAE,IAAA,qBAAa,EAAC,yBAAM,EAAE,IAAI,EAAE,gEAAgE;QAC3H,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;YAChB,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;YACvC,SAAS,CAAC,KAAK,GAAG,KAAK,CAAA;YACvB,SAAS,CAAC,WAAW,GAAG,WAAW,CAAA;YACnC,MAAM,gBAAgB,GAAG,IAAA,6BAAa,EAAC,SAAS,CAAC,CAAA;YACjD,OAAO,IAAA,qBAAa,EAAC,wBAAK,EAAE;gBAC1B,KAAK,EAAE,IAAI;gBACX,GAAG,EAAE,IAAI;gBACT,IAAI,EAAE,IAAI;gBACV,MAAM,EAAE,GAAG,EAAE,CAAC,IAAA,qBAAa,EAAC,gBAAgB,EAAE;oBAC5C,GAAG,EAAE,QAAQ,CAAC,QAAQ;iBACvB,CAAC;aACH,CAAC,CAAA;QACJ,CAAC,CAAC,CAAC,CAAC,CAAC;KACV,CAAC,CAAC,EACD,QAAQ,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAA;AAErC,CAAC,CAAA;AAKC,oCAAY;AAHd,YAAY,EAAE,CAAA"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
+
import { StaticRouter } from 'react-router-dom';
|
|
2
3
|
import { ISSRContext, IConfig } from 'ssr-types-react';
|
|
3
|
-
declare const serverRender: (ctx: ISSRContext, config: IConfig) => Promise<React.
|
|
4
|
+
declare const serverRender: (ctx: ISSRContext, config: IConfig) => Promise<React.CElement<import("react-router-dom").StaticRouterProps, StaticRouter>>;
|
|
4
5
|
export { serverRender };
|
|
5
6
|
//# sourceMappingURL=server-entry.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server-entry.d.ts","sourceRoot":"","sources":["../../src/entry/server-entry.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"server-entry.d.ts","sourceRoot":"","sources":["../../src/entry/server-entry.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAE/C,OAAO,EAAE,WAAW,EAAE,OAAO,EAAoE,MAAM,iBAAiB,CAAA;AAQxH,QAAA,MAAM,YAAY,QAAe,WAAW,UAAU,OAAO,wFA+E5D,CAAA;AAED,OAAO,EACL,YAAY,EACb,CAAA"}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.serverRender = void 0;
|
|
4
4
|
const React = require("react");
|
|
5
|
+
const react_1 = require("react");
|
|
5
6
|
const react_router_dom_1 = require("react-router-dom");
|
|
6
7
|
const ssr_server_utils_1 = require("ssr-server-utils");
|
|
7
8
|
const ssr_serialize_javascript_1 = require("ssr-serialize-javascript");
|
|
@@ -67,10 +68,20 @@ const serverRender = async (ctx, config) => {
|
|
|
67
68
|
const injectState = isCsr ? React.createElement("script", { dangerouslySetInnerHTML: { __html: `window.prefix="${prefix}";${clientPrefix ? `window.clientPrefix="${clientPrefix}";` : ''}` } }) : React.createElement("script", { dangerouslySetInnerHTML: {
|
|
68
69
|
__html: `window.__USE_SSR__=true; window.__INITIAL_DATA__ =${(0, ssr_serialize_javascript_1.serialize)(combineData)}; window.prefix="${prefix}";${clientPrefix ? `window.clientPrefix="${clientPrefix}";` : ''}`
|
|
69
70
|
} });
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
71
|
+
// with jsx type error, use createElement here
|
|
72
|
+
return (0, react_1.createElement)(react_router_dom_1.StaticRouter, {
|
|
73
|
+
location: ctx.request.url,
|
|
74
|
+
basename: prefix === '/' ? undefined : prefix
|
|
75
|
+
}, (0, react_1.createElement)(create_context_1.STORE_CONTEXT.Provider, {
|
|
76
|
+
value: {
|
|
77
|
+
state: combineData
|
|
78
|
+
}
|
|
79
|
+
}, (0, react_1.createElement)(Layout, {
|
|
80
|
+
ctx: ctx,
|
|
81
|
+
config: config,
|
|
82
|
+
staticList: staticList,
|
|
83
|
+
injectState: injectState
|
|
84
|
+
}, (0, react_1.createElement)(Component, null))));
|
|
74
85
|
};
|
|
75
86
|
exports.serverRender = serverRender;
|
|
76
87
|
//# sourceMappingURL=server-entry.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server-entry.js","sourceRoot":"","sources":["../../src/entry/server-entry.tsx"],"names":[],"mappings":";;;AAAA,+BAA8B;AAC9B,uDAA+C;AAC/C,uDAA2I;AAE3I,uEAAoD;AACpD,mBAAmB;AACnB,0DAAgE;AAChE,mDAAwC;AAExC,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,sBAAyB,CAAA;AAE1E,MAAM,YAAY,GAAG,KAAK,EAAE,GAAgB,EAAE,MAAe,
|
|
1
|
+
{"version":3,"file":"server-entry.js","sourceRoot":"","sources":["../../src/entry/server-entry.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client-entry.d.ts","sourceRoot":"","sources":["../../src/entry/client-entry.tsx"],"names":[],"mappings":"AAWA,QAAA,MAAM,YAAY,QAAa,QAAQ,IAAI,
|
|
1
|
+
{"version":3,"file":"client-entry.d.ts","sourceRoot":"","sources":["../../src/entry/client-entry.tsx"],"names":[],"mappings":"AAWA,QAAA,MAAM,YAAY,QAAa,QAAQ,IAAI,CA8B1C,CAAA;AAID,OAAO,EACL,YAAY,EACb,CAAA"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { createElement } from 'react';
|
|
2
2
|
import * as ReactDOM from 'react-dom';
|
|
3
3
|
import { BrowserRouter, Route, Switch } from 'react-router-dom';
|
|
4
4
|
import { preloadComponent, isMicro } from 'ssr-client-utils';
|
|
@@ -13,19 +13,25 @@ const clientRender = async () => {
|
|
|
13
13
|
// 客户端渲染||hydrate
|
|
14
14
|
const baseName = isMicro() ? window.clientPrefix : window.prefix;
|
|
15
15
|
const routes = await preloadComponent(FeRoutes, baseName);
|
|
16
|
-
ReactDOM[window.__USE_SSR__ ? 'hydrate' : 'render'](
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
16
|
+
ReactDOM[window.__USE_SSR__ ? 'hydrate' : 'render'](createElement(BrowserRouter, {
|
|
17
|
+
basename: baseName
|
|
18
|
+
}, createElement(AppContext, {
|
|
19
|
+
children: createElement(Switch, null, createElement(IApp, null, createElement(Switch, null, // 使用高阶组件wrapComponent使得csr首次进入页面以及csr/ssr切换路由时调用getInitialProps
|
|
20
|
+
routes.map(item => {
|
|
21
|
+
const { fetch, component, path } = item;
|
|
22
|
+
component.fetch = fetch;
|
|
23
|
+
component.layoutFetch = layoutFetch;
|
|
24
|
+
const WrappedComponent = wrapComponent(component);
|
|
25
|
+
return createElement(Route, {
|
|
26
|
+
exact: true,
|
|
27
|
+
key: path,
|
|
28
|
+
path: path,
|
|
29
|
+
render: () => createElement(WrappedComponent, {
|
|
30
|
+
key: location.pathname
|
|
31
|
+
})
|
|
32
|
+
});
|
|
33
|
+
}))))
|
|
34
|
+
})), document.getElementById('app'));
|
|
29
35
|
};
|
|
30
36
|
clientRender();
|
|
31
37
|
export { clientRender };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client-entry.js","sourceRoot":"","sources":["../../src/entry/client-entry.tsx"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"client-entry.js","sourceRoot":"","sources":["../../src/entry/client-entry.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AACrC,OAAO,KAAK,QAAQ,MAAM,WAAW,CAAA;AACrC,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AAC/D,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAA;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAE7C,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAEtC,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,EAAE,GAAG,MAAyB,CAAA;AAEhE,MAAM,YAAY,GAAG,KAAK,IAAmB,EAAE;IAC7C,MAAM,IAAI,GAAG,GAAG,aAAH,GAAG,cAAH,GAAG,GAAI,UAAU,KAAkB;QAC9C,OAAO,KAAK,CAAC,QAAS,CAAA;IACxB,CAAC,CAAA;IACD,iBAAiB;IACjB,MAAM,QAAQ,GAAG,OAAO,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAA;IAChE,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;IACzD,QAAQ,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CACjD,aAAa,CAAC,aAAa,EAAE;QAC3B,QAAQ,EAAE,QAAQ;KACnB,EAAE,aAAa,CAAC,UAAiB,EAAE;QAClC,QAAQ,EAAE,aAAa,CAAC,MAAM,EAAE,IAAI,EAClC,aAAa,CAAC,IAAW,EAAE,IAAI,EAAE,aAAa,CAAC,MAAM,EAAE,IAAI,EAAE,gEAAgE;QAC3H,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;YAChB,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;YACvC,SAAS,CAAC,KAAK,GAAG,KAAK,CAAA;YACvB,SAAS,CAAC,WAAW,GAAG,WAAW,CAAA;YACnC,MAAM,gBAAgB,GAAG,aAAa,CAAC,SAAS,CAAC,CAAA;YACjD,OAAO,aAAa,CAAC,KAAK,EAAE;gBAC1B,KAAK,EAAE,IAAI;gBACX,GAAG,EAAE,IAAI;gBACT,IAAI,EAAE,IAAI;gBACV,MAAM,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,gBAAgB,EAAE;oBAC5C,GAAG,EAAE,QAAQ,CAAC,QAAQ;iBACvB,CAAC;aACH,CAAC,CAAA;QACJ,CAAC,CAAC,CAAC,CAAC,CAAC;KACV,CAAC,CAAC,EACD,QAAQ,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAA;AAErC,CAAC,CAAA;AAED,YAAY,EAAE,CAAA;AAEd,OAAO,EACL,YAAY,EACb,CAAA"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
+
import { StaticRouter } from 'react-router-dom';
|
|
2
3
|
import { ISSRContext, IConfig } from 'ssr-types-react';
|
|
3
|
-
declare const serverRender: (ctx: ISSRContext, config: IConfig) => Promise<React.
|
|
4
|
+
declare const serverRender: (ctx: ISSRContext, config: IConfig) => Promise<React.CElement<import("react-router-dom").StaticRouterProps, StaticRouter>>;
|
|
4
5
|
export { serverRender };
|
|
5
6
|
//# sourceMappingURL=server-entry.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server-entry.d.ts","sourceRoot":"","sources":["../../src/entry/server-entry.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"server-entry.d.ts","sourceRoot":"","sources":["../../src/entry/server-entry.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAE/C,OAAO,EAAE,WAAW,EAAE,OAAO,EAAoE,MAAM,iBAAiB,CAAA;AAQxH,QAAA,MAAM,YAAY,QAAe,WAAW,UAAU,OAAO,wFA+E5D,CAAA;AAED,OAAO,EACL,YAAY,EACb,CAAA"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
+
import { createElement } from 'react';
|
|
2
3
|
import { StaticRouter } from 'react-router-dom';
|
|
3
4
|
import { findRoute, getManifest, logGreen, normalizePath, getAsyncCssChunk, getAsyncJsChunk, reactRefreshFragment } from 'ssr-server-utils';
|
|
4
5
|
import { serialize } from 'ssr-serialize-javascript';
|
|
@@ -64,10 +65,20 @@ const serverRender = async (ctx, config) => {
|
|
|
64
65
|
const injectState = isCsr ? React.createElement("script", { dangerouslySetInnerHTML: { __html: `window.prefix="${prefix}";${clientPrefix ? `window.clientPrefix="${clientPrefix}";` : ''}` } }) : React.createElement("script", { dangerouslySetInnerHTML: {
|
|
65
66
|
__html: `window.__USE_SSR__=true; window.__INITIAL_DATA__ =${serialize(combineData)}; window.prefix="${prefix}";${clientPrefix ? `window.clientPrefix="${clientPrefix}";` : ''}`
|
|
66
67
|
} });
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
68
|
+
// with jsx type error, use createElement here
|
|
69
|
+
return createElement(StaticRouter, {
|
|
70
|
+
location: ctx.request.url,
|
|
71
|
+
basename: prefix === '/' ? undefined : prefix
|
|
72
|
+
}, createElement(Context.Provider, {
|
|
73
|
+
value: {
|
|
74
|
+
state: combineData
|
|
75
|
+
}
|
|
76
|
+
}, createElement(Layout, {
|
|
77
|
+
ctx: ctx,
|
|
78
|
+
config: config,
|
|
79
|
+
staticList: staticList,
|
|
80
|
+
injectState: injectState
|
|
81
|
+
}, createElement(Component, null))));
|
|
71
82
|
};
|
|
72
83
|
export { serverRender };
|
|
73
84
|
//# sourceMappingURL=server-entry.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server-entry.js","sourceRoot":"","sources":["../../src/entry/server-entry.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAC/C,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,aAAa,EAAE,gBAAgB,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AAE3I,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AACpD,mBAAmB;AACnB,OAAO,EAAE,aAAa,IAAI,OAAO,EAAE,MAAM,uBAAuB,CAAA;AAChE,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AAExC,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,MAAyB,CAAA;AAE1E,MAAM,YAAY,GAAG,KAAK,EAAE,GAAgB,EAAE,MAAe,
|
|
1
|
+
{"version":3,"file":"server-entry.js","sourceRoot":"","sources":["../../src/entry/server-entry.tsx"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { createElement } from 'react'
|
|
2
2
|
import * as ReactDOM from 'react-dom'
|
|
3
3
|
import { BrowserRouter, Route, Switch } from 'react-router-dom'
|
|
4
4
|
import { preloadComponent, isMicro } from 'ssr-client-utils'
|
|
@@ -17,28 +17,26 @@ const clientRender = async (): Promise<void> => {
|
|
|
17
17
|
const baseName = isMicro() ? window.clientPrefix : window.prefix
|
|
18
18
|
const routes = await preloadComponent(FeRoutes, baseName)
|
|
19
19
|
ReactDOM[window.__USE_SSR__ ? 'hydrate' : 'render'](
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
</AppContext>
|
|
41
|
-
</BrowserRouter>
|
|
20
|
+
createElement(BrowserRouter, {
|
|
21
|
+
basename: baseName
|
|
22
|
+
}, createElement(AppContext as any, {
|
|
23
|
+
children: createElement(Switch, null,
|
|
24
|
+
createElement(IApp as any, null, createElement(Switch, null, // 使用高阶组件wrapComponent使得csr首次进入页面以及csr/ssr切换路由时调用getInitialProps
|
|
25
|
+
routes.map(item => {
|
|
26
|
+
const { fetch, component, path } = item
|
|
27
|
+
component.fetch = fetch
|
|
28
|
+
component.layoutFetch = layoutFetch
|
|
29
|
+
const WrappedComponent = wrapComponent(component)
|
|
30
|
+
return createElement(Route, {
|
|
31
|
+
exact: true,
|
|
32
|
+
key: path,
|
|
33
|
+
path: path,
|
|
34
|
+
render: () => createElement(WrappedComponent, {
|
|
35
|
+
key: location.pathname
|
|
36
|
+
})
|
|
37
|
+
})
|
|
38
|
+
}))))
|
|
39
|
+
}))
|
|
42
40
|
, document.getElementById('app'))
|
|
43
41
|
|
|
44
42
|
}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import * as React from 'react'
|
|
2
|
+
import { createElement } from 'react'
|
|
2
3
|
import { StaticRouter } from 'react-router-dom'
|
|
3
4
|
import { findRoute, getManifest, logGreen, normalizePath, getAsyncCssChunk, getAsyncJsChunk, reactRefreshFragment } from 'ssr-server-utils'
|
|
4
5
|
import { ISSRContext, IConfig, ReactRoutesType, ReactESMPreloadFeRouteItem, DynamicFC, StaticFC } from 'ssr-types-react'
|
|
@@ -9,7 +10,7 @@ import { Routes } from './create-router'
|
|
|
9
10
|
|
|
10
11
|
const { FeRoutes, layoutFetch, state, Layout } = Routes as ReactRoutesType
|
|
11
12
|
|
|
12
|
-
const serverRender = async (ctx: ISSRContext, config: IConfig)
|
|
13
|
+
const serverRender = async (ctx: ISSRContext, config: IConfig) => {
|
|
13
14
|
const { mode, parallelFetch, prefix, isVite, isDev, clientPrefix } = config
|
|
14
15
|
const path = normalizePath(ctx.request.path, prefix)
|
|
15
16
|
const routeItem = findRoute<ReactESMPreloadFeRouteItem>(FeRoutes, path)
|
|
@@ -23,7 +24,7 @@ const serverRender = async (ctx: ISSRContext, config: IConfig): Promise<React.Re
|
|
|
23
24
|
|
|
24
25
|
const { fetch, webpackChunkName, component } = routeItem
|
|
25
26
|
const dynamicCssOrder = await getAsyncCssChunk(ctx, webpackChunkName, config)
|
|
26
|
-
const dynamicJsOrder = await getAsyncJsChunk(ctx, webpackChunkName,
|
|
27
|
+
const dynamicJsOrder = await getAsyncJsChunk(ctx, webpackChunkName, config)
|
|
27
28
|
const manifest = await getManifest(config)
|
|
28
29
|
|
|
29
30
|
const injectCss = ((isVite && isDev) ? [
|
|
@@ -74,15 +75,20 @@ const serverRender = async (ctx: ISSRContext, config: IConfig): Promise<React.Re
|
|
|
74
75
|
const injectState = isCsr ? <script dangerouslySetInnerHTML={{ __html: `window.prefix="${prefix}";${clientPrefix ? `window.clientPrefix="${clientPrefix}";` : ''}` }} /> : <script dangerouslySetInnerHTML={{
|
|
75
76
|
__html: `window.__USE_SSR__=true; window.__INITIAL_DATA__ =${serialize(combineData)}; window.prefix="${prefix}";${clientPrefix ? `window.clientPrefix="${clientPrefix}";` : ''}`
|
|
76
77
|
}} />
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
78
|
+
// with jsx type error, use createElement here
|
|
79
|
+
return createElement(StaticRouter, {
|
|
80
|
+
location: ctx.request.url,
|
|
81
|
+
basename: prefix === '/' ? undefined : prefix
|
|
82
|
+
}, createElement(Context.Provider, {
|
|
83
|
+
value: {
|
|
84
|
+
state: combineData
|
|
85
|
+
}
|
|
86
|
+
}, createElement(Layout, {
|
|
87
|
+
ctx: ctx,
|
|
88
|
+
config: config,
|
|
89
|
+
staticList: staticList,
|
|
90
|
+
injectState: injectState
|
|
91
|
+
}, createElement(Component, null))))
|
|
86
92
|
}
|
|
87
93
|
|
|
88
94
|
export {
|