提问者:小点点

所有路由的Web包开发中间件传递


我在客户端上使用webpack-dev-中间件以及一个使用react-router的反应应用程序。

如果我在根/输入应用程序,一切都好,但是webpack-dev-middleware不会提供任何路径,比如'/my-route'

server.use(webpackDevMiddleware(compiler, {
    publicPath: '/'
}));

我尝试使用一个通配符,它允许所有路径通过并获取html页面,但是当页面请求main时,它似乎会出现。js,它现在还可以获得html页面,而不是打包的javascript。

server.use('/*', webpackDevMiddleware(compiler, {
    publicPath: '/'
}));

其目标是,服务器不知道的任何路由都将获得与根相同的内容,然后react router将处理在客户端上显示正确视图(或404)的问题。

任何帮助都将不胜感激。


共2个答案

匿名用户

请尝试连接历史api回退npm包,这是webpack dev server出于相同目的在引擎盖下使用的。

这对我很有效:

var history = require('connect-history-api-fallback');
server.use(history());
server.use(webpackDevMiddleware(compiler, {
  publicPath: '/'
}));

匿名用户

我有同样的问题,我的解决方案是更新react路由器配置和react路由器dom包。无需采取进一步行动。

我从4点开始。x到5.0。1(在两个包装中)。