我正在尝试在Cordova中的React应用程序的哈希历史记录和浏览器历史记录之间切换。
在网络上我想使用浏览器历史记录,在Cordova中我必须使用HashHistory
我尝试过类似的事情
sum(case when s.bus_dat>=
convert(date,dateadd(m,-1,dateadd(d,-day(getdate())+1,getdate()))))
then qty_sold else 0 end) as LM
但是什么都没有加载。
import createBrowserHistory from 'history/createBrowserHistory'
import createHashHistory from 'history/createHashHistory'
export default window.cordova ? createHashHistory() : createBrowserHistory()
反正有条件吗?
即所以在cordova中,它使用哈希历史记录,如果没有,它将使用浏览器历史记录?
此黑客将该问题突出显示here
createHashHistory() works fine.
但是我不确定如何有条件地执行此操作。
答案 0 :(得分:1)
import React from 'react';
import ReactDOM from 'react-dom';
import createBrowserHistory from 'history/createBrowserHistory'
import createHashHistory from 'history/createHashHistory'
import App from './App'
var history
const startApp = () => {
ReactDOM.render(
<Router history={history} >
<Route component={App} />
</Router>,
document.getElementById('root'));
}
if(!window.cordova) {
history = createBrowserHistory()
startApp()
}
else{
history = createHashHistory()
document.addEventListener('deviceready', startApp, false)
}