我正在使用React和Electron构建一个应用程序,并使用React Router Dom进行导航(我正在使用HashRouter,因为它将不在生产服务器中)。我正在尝试打开一个新的电子窗口并显示其中包含React的页面,但是我无法弄清楚如何使用文件协议访问React Router路由,因为每个页面都没有自己的html文件。有人知道我可以使用文件协议访问该路由吗?
我的主页通过以下方式加载到应用中,该方式适用于“ /”路线:
mainWin.loadURL(
isDev
? 'http://localhost:3000'
: `file://${path.join(__dirname, '../build/index.html')}`
)
我正在尝试将页面加载到第二个应该使用“ / settings”路由的窗口中。
settingsWin.loadURL(
isDev
? 'http://localhost:3000/settings'
: `file://${path.join(__dirname, '../build/index.html/settings')}`
)
这是我尝试使用的路径,但是没有一个加载页面:
`file://${path.join(__dirname, '../build/index.html:settings')}`
`file://${path.join(__dirname, '../build/settings')}`
`file://${path.join(__dirname, '../build/index.html/settings')}`
答案 0 :(得分:0)
本地访问React Router路由的方法是在index.html路径的末尾添加“#/ [page-name]”,因为HashRouter会查看URL哈希(URL片段)。所以现在我的代码如下:
`file://${path.join(__dirname, '../build/index.html#/settings')}`