electron打包桌面版.exe之vue项目踩坑(vue3+electron 解决打包后首页打开空白,打包后路由不跳转及请求不到后端数据等问题)

vue项目https://www.qingplus.cn/components-web/index打包桌面版问题集合

一、静态资源加载问题
npm 复制代码
npm run electron_dev

桌面版运行后页面空白,内容未加载。

填坑:

打包配置要用相对路径

vite.config.ts文件中的base要改成'./',之前加了项目名

二、接口请求报错

后端接口请求失败

填坑

axios的baseUR需要配置请求路径(http://www.baidu.com)

javascript 复制代码
axios.defaults.baseURL = 'http://www.baidu.com' 
三、路由跳转失败

登录成功后使用router.push('/index')跳转到首页,未跳转成功

网上都是路由模式要用Hash模式,但我项目本来就Hash,经过不断排查,是setCookie()方法出了问题,因为是electron不支持这种方式

javascript 复制代码
 /**
     * 设置token
     */
    setToken(token: string) {
      this.oauthToken = token
      setCookie('oauthToken', token)
    }

    /**
 * 设置Cookie
 * @param {string} key
 * @param {*} val
 * @param {*} path
 */
 export function setCookie(key: string, val: string, path?: string) {
  if (!path) path = "/";
  document.cookie = key + "=" + val + "; expires=Session; path=" + path;  //设置cookie
}
填坑

用sessionStorage.setItem代替将setCookie(),sessionStorage.getItem代替getCookie()

相关推荐
晓得迷路了20 分钟前
栗子前端技术周刊第 84 期 - Vite v7.0 beta、Vitest 3.2、Astro 5.9...
前端·javascript·vite
独立开阀者_FwtCoder23 分钟前
最全301/302重定向指南:从SEO到实战,一篇就够了
前端·javascript·vue.js
Moment32 分钟前
给大家推荐一个超好用的 Marsview 低代码平台 🤩🤩🤩
前端·javascript·github
明似水1 小时前
用 Melos 解决 Flutter Monorepo 的依赖冲突:一个真实案例
前端·javascript·flutter
独立开阀者_FwtCoder1 小时前
stagewise:让AI与代码编辑器无缝连接
前端·javascript·github
江城开朗的豌豆1 小时前
JavaScript篇:对象派 vs 过程派:编程江湖的两种武功心法
前端·javascript·面试
菥菥爱嘻嘻2 小时前
JS手写代码篇---手写ajax
开发语言·javascript·ajax
江城开朗的豌豆2 小时前
JavaScript篇:字母侦探:如何快速统计字符串里谁才是'主角'?
前端·javascript·面试
kite01218 小时前
浏览器工作原理06 [#]渲染流程(下):HTML、CSS和JavaScript是如何变成页面的
javascript·css·html
крон8 小时前
【Auto.js例程】华为备忘录导出到其他手机
开发语言·javascript·智能手机