Webpack Devserver - Angular2 - 允许扩展

时间:2016-12-08 11:12:48

标签: angular webpack webpack-dev-server

因此,对于out app,要求所有网址都具有.app扩展名...

所以http://domain/news.app http://domain/article.app?blah=blah

虽然这在生产(apache)服务器上工作正常(实际解析扩展)但它在我的webpack开发服务器上不起作用...或者至少我找不到任何设置才能使它工作

在我的角度应用路线中,例如我有这个

const appRoutes: Routes  = [
    { path: 'home.app', pathMatch: 'full', component: AppPage},
    { path: 'news.app', pathMatch: 'full', component: AppNews}
];

webpack.dev conf

output: {
    path: helpers.root('dist'),
    publicPath: 'http://localhost:8080/',
    filename: '[name].js',
    chunkFilename: '[id].chunk.js'
},

所以如果我做http://localhost:8080/news.app ....我得到了

无法获取/news.app

如何设置允许/news.app?

的开发服务器

2 个答案:

答案 0 :(得分:1)

devServer: {
    port: 8080,
    historyApiFallback: {
      index: 'index.html'
    }
  }

这会将您的所有调用重定向到index.html,然后Angular2路由器将从那里获取它。

这个谜团当然是 historyApiFallback 的背后,它会告诉webpack在任何情况下都会回退到index.html。

答案 1 :(得分:0)

historyApiFallback中的

I found the setting ....解决了我的问题

historyApiFallback: {
    disableDotRule: true
},

感谢xe4me向我指出了正确的方向