我正在尝试将react ssr集成到现有的nodejs express应用程序中。我仍然不希望将整个应用程序打包到webpack,我试图仅提供一条路径来呈现React代码。
src / index.js
export const ssrHandler = (req, res) => {
// some react code here.
}
webpack.config
module.exports = {
entry: './src/index.js',
output: {
filename: 'server-bundle.js',
publicPath: '/dist/'
},
target: 'node',
externals: [nodeExternals()],
module: {
rules: [
// all rules here.
]
},
};
我正在使用以下命令webpack --config webpack/server.config.js
我正在尝试在另一个如下的nodejs表达代码中导入捆绑文件
api / server.js
// nodejs code here
const ssr = require('../dist/server-bundle');
app.use('/path', ssr.ssrHandler);
但是无论我尝试过什么配置,ssr
始终是空对象'{}',有没有办法使bundle导出功能,我检查了生成的代码,生成的中没有module.export文件。
先谢谢了。请指出其他类似的问题(如果有的话),我真的很讨厌搜索这个类似的问题。
答案 0 :(得分:1)
我认为还需要进行更多https://www.geeksforgeeks.org/dynamic-programming/的配置才能完成此工作:
output: {
filename: 'server-bundle.js',
publicPath: '/dist/',
libraryTarget: 'commonjs2',
libraryExport: 'default'
},
还有:
const ssrHandler = (req, res) => {
};
export default ssrHandler;
我希望我能提供更多的见解-但这只是output的结果