假如我们的应用包含两个窗口:登陆窗口和主窗口。当我们登陆成功后,需要跳转到主窗口。如果我们使用的是 BrowserRouter,直接修改 url 即可。但如果是 HashRouter 该怎么办呢?
我尝试过直接在文件路径后加’#‘号加路由,这时 Electron 匹配不到,因此我又仔细看了下官方文档,loadFile 的 API 文档如下:
win.loadFile(filePath[, options])
filePath String
options Object (可选)
query Object (可选) - 传递给 url.format().
search String (可选) - 传递给 url.format().
hash String (可选) - 传递给 url.format().
我们发现 loadFile 方法有两个参数,第一个我们已经知道了,第二个参数是配置项,其中有一个 hash 属性配置,好了,顾名思义这个 hash 就是我们要的啦,加上 hash 配置,跳转成功!
代码如下:
win.loadFile('./index.html', {
hash: 'main'
})