|
1 | 1 | 'use strict'; |
2 | 2 |
|
3 | 3 | import{pipeToNodeWritable}from'react-transport-dom-webpack/server'; |
| 4 | +import{readFileSync}from'fs'; |
| 5 | +import{resolve}from'path'; |
4 | 6 | import*asReactfrom'react'; |
5 | 7 |
|
6 | | -importurlfrom'url'; |
7 | | - |
8 | | -functionresolve(path){ |
9 | | -returnurl.pathToFileURL(require.resolve(path)).href; |
10 | | -} |
11 | | - |
12 | 8 | module.exports=asyncfunction(req,res){ |
13 | | -res.setHeader('Access-Control-Allow-Origin','*'); |
14 | 9 | constm=awaitimport('../src/App.server.js'); |
15 | 10 | // const m = require('../src/App.server.js'); |
16 | 11 | constApp=m.default.default||m.default; |
17 | | -pipeToNodeWritable(<App/>,res,{ |
18 | | -// TODO: Read from a map on the disk. |
19 | | -[resolve('../src/Counter.client.js')]: { |
20 | | -Counter: { |
21 | | -id: './src/Counter.client.js', |
22 | | -chunks: ['2'], |
23 | | -name: 'Counter', |
24 | | -}, |
25 | | -}, |
26 | | -[resolve('../src/Counter2.client.js')]: { |
27 | | -Counter: { |
28 | | -id: './src/Counter2.client.js', |
29 | | -chunks: ['1'], |
30 | | -name: 'Counter', |
31 | | -}, |
32 | | -}, |
33 | | -[resolve('../src/ShowMore.client.js')]: { |
34 | | -default: { |
35 | | -id: './src/ShowMore.client.js', |
36 | | -chunks: ['3'], |
37 | | -name: 'default', |
38 | | -}, |
39 | | -'': { |
40 | | -id: './src/ShowMore.client.js', |
41 | | -chunks: ['3'], |
42 | | -name: '', |
43 | | -}, |
44 | | -'*': { |
45 | | -id: './src/ShowMore.client.js', |
46 | | -chunks: ['3'], |
47 | | -name: '*', |
48 | | -}, |
49 | | -}, |
50 | | -}); |
| 12 | +res.setHeader('Access-Control-Allow-Origin','*'); |
| 13 | +constmoduleMap=JSON.parse( |
| 14 | +readFileSync( |
| 15 | +resolve(__dirname,'../dist/react-transport-manifest.json'), |
| 16 | +'utf8' |
| 17 | +) |
| 18 | +); |
| 19 | +pipeToNodeWritable(<App/>,res,moduleMap); |
51 | 20 | }; |
0 commit comments