1

所以问题是webpack-dev-server一切都按预期工作。

但是,当我手动打开index.html after时npm run build,我只看到正在渲染的标题组件,其余的将在获取数据后渲染,是空白的。控制台没有错误。

渲​​染的组件是Routes。好吧,我是Route第一次使用 s ,经过大量搜索后,我了解到我应该在webpack.config.jshistoryApiFallback中使用andpublicPath

output: {
        path: path.join(__dirname, '/build'),
        filename: '[name].bundle.js',
        publicPath: '/'
    },
devServer: {
    historyApiFallback: true
  },

但结果是一样的。我不知道它在开发和生产方面有何不同。我还想稍微解释一下您可能提供的修复程序!

请告诉我原因和解决方法!

链接到项目 - https://codesandbox.io/s/fetch-countries-api-1ibwp?file=/src/index.js:138-154

4

1 回答 1

0

尝试使用https://www.npmjs.com/package/serve 之类的包为您的构建文件夹提供服务serve

创建一个类似以下内容的serve.json,用于直接访问子路由。

{
  "public": "build",
  "rewrites": [
    {
      "source": "/*",
      "destination": "/index.html"
    }
  ]
}
于 2020-09-03T07:09:59.233 回答