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()

相关推荐
辰同学ovo16 分钟前
Pinia极速入门:核心概念与入门指南
前端·javascript·vue.js
n 55!w !10823 分钟前
js练习作业
开发语言·javascript·ecmascript
计算机程序设计小李同学25 分钟前
基于位置服务的二手图书回收平台
java·前端·vue.js·spring boot·后端
Whisper_Sy25 分钟前
Flutter for OpenHarmony移动数据使用监管助手App实战 - 月报告实现
android·开发语言·javascript·网络·flutter·ecmascript
灰灰勇闯IT26 分钟前
【Flutter for OpenHarmonyDart 入门日记】第5篇:字典类型 Map 与动态类型 dynamic 全解析
开发语言·javascript·ecmascript
雨季66629 分钟前
Flutter for OpenHarmony 入门实践:从 Scaffold 到 Container 的三段式布局构建
开发语言·javascript·flutter
Dreamy smile30 分钟前
JavaScript 继承与 this 指向操作详解
开发语言·javascript·原型模式
多仔ヾ42 分钟前
Vue.js 前端开发实战之 07-Vuex 状态管理
vue.js
HIT_Weston1 小时前
109、【Ubuntu】【Hugo】搭建私人博客:搜索功能(五)
linux·javascript·ubuntu
一个处女座的程序猿O(∩_∩)O1 小时前
Next.js 与 React 深度解析:为什么选择 Next.js?
开发语言·javascript·react.js