无法将html-webpack-plugin与Express Server一起使用来访问动态html

时间:2018-07-12 10:03:30

标签: node.js express webpack html-webpack-plugin

最近,我想在项目中使用html-webpack-plugin,但是遇到了问题。 这是我的server.js和webpack.dev.config.js的一部分

server.js

if (process.env.NODE_ENV === 'development')
{
    const webpack = require('webpack');
    const config = require('./webpack.development.config');
    const compiler = webpack(config);

    app.use(require('webpack-dev-middleware')(compiler,
    {
        noInfo: true,
        publicPath: '/'
    }));

    app.use(require('webpack-hot-middleware')(compiler));
}

    app.get('*', (req, res) =>
    {
        res.sendFile(path.resolve(__dirname, 'public/asset','index.html'));
    });

webpack.dev.js

plugins: [
    new HtmlWebpackPlugin({
        template: './public/enter.html',
        filename: 'index.html'
    }),
    new PreloadWebpackPlugin()
]

我可以像http://localhost:3000一样直接访问它。 应该可以通过任何路径访问它,例如http://localhost:3000/counter,但是可以获取

  

错误:ENOENT:没有这样的文件或目录,统计   '/Users/paulhuang/Documents/workspace/react-redux-template/public/asset/index.html'

我使用npm run build创建硬盘index.html,并解决了问题。

还有其他更好的主意吗?谢谢!

0 个答案:

没有答案