2016-04-28 22 views
2

我正在努力實現圖像查看器並使用React路由器。上傳的圖像文件的格式爲<name>.<type-suffix>-<date-tag>,以句號和hypen作爲分隔符。點和連字符不允許React路由器URL參數?

鑑於此路線:<Route path="zoomer/:imageId" component={ Zoom }/>和此URL http://localhost:8080/zoomer/medMain.tif-1461839237863它似乎並沒有找到匹配的路由器。

如果我刪除點和連字符(例如http://localhost:8080/zoomer/medMaintif1461839237863)路由工作得很好,但我真的需要保留這些分隔符的語義原因。而URLEncode()也不會幫助我。

有沒有我需要做的路線規範來解決這個問題?

回答

2

我有同樣的問題證明是webpack dev服務器與history-api-fallback啓用未能將這些網址傳遞給反應的應用程序。黑客的webpack配置,以通過這些作出反應:

... 
devServer: { 
    proxy: { 
    '/*.*': { // Match all URL's with period/dot 
     target: 'http://localhost:8080/', // send to webpack dev server 
     rewrite: function(req){ 
     req.url='index.html'; // Send to react app 
     } 
    } 
    } 
} 
...