原因找了很久,最后发现是路由的问题,使用了 createWebHistory ,去掉了hash,虽然是打包APP看不到路由,就是我手贱喜欢搞些有的没的。
虚拟机安卓系统比较老,很多功能没给上去,webview的实现也用的很老版本,导致和真机不一样。 navigator 上找不到cordova的定义,我猜测,webview起来的时候cordova.js在navigator上面做了很多事,而之后跳转路由之后,没带hash,webview把navigator给覆盖初始化了,而使用了hash模式,webview路由跳转并不会更新内部全局变量。(这只是我的猜测,有大神知道请指点)
改成 createWebHashHistory 就可以了,这个坑让我加班到了10点...