3-Electron打开新窗口,并跳转到指定的路由

需要配置路由。src/router/index.js

复制代码
    {
      path: "/selectMode",
      name: "selectMode",
      component: () => import("/@/view/selectMode/index.vue"),
    },

src/**.vue

复制代码
import { ipcRenderer } from "electron";

const openNewTab = () => {
  let params = {
    url: "/selectMode", // 路由path
  };
  ipcRender.send("openNewTab", params);
};

electron/index.ts

复制代码
let nweTab
// 打开新窗口
ipcMain.on("openNewTab", async (event, arg) => {
  newTab = new BrowserWindow({
    width: 1400,
    height: 800,
    webPreferences: {
      // preload: path.join(__dirname, "preload.js"),
      nodeIntegration: true,
      contextIsolation: false,
      webSecurity: false, // 禁用同源策略,允许跨域
    },
  });

  if (process.env.VITE_DEV_SERVER_URL) {
    newTab.loadURL(url + "#" + arg.url);
    // newTab.loadURL(`http://localhost:3000/#/file_preview`)
    newTab.webContents.openDevTools();
  } else {
    newTab.loadFile("dist/index.html", {
      hash: arg.url
    });
    // newTab.loadFile("dist/index.html", {
      hash: "/file_preview"
    })
    newTab.webContents.openDevTools();
  }
});

相关链接:electron实现打开子窗口,窗口加载vue路由指定的组件页面

相关推荐
子兮曰3 天前
jev-ultrafast 深度解析:7 秒订机票的浏览器 Agent 是如何炼成的
前端·后端·agent
子兮曰3 天前
Jev 爆发一周:7 秒 Agent 背后的 System One 生态与三场争议
前端·后端·ai编程
前端小万3 天前
写公众号赚了 3000 块后,我做了一款叫 "一键成稿" 的软件
前端·微信小程序
爱勇宝3 天前
ZCode 开源 24 小时:一份没有历史的账本,回答不了"有没有偷代码"
前端·后端·chatglm (智谱)
A黄俊辉A3 天前
uniapp webview中实现 app和内嵌的H5双向通信
vue.js·json
三十而立洋3 天前
Cookie 详解:从产生到安全,一次讲透
前端·javascript
大蓝头3 天前
安装包UI美化之路-nsNiuniuSkin全新UI调试与预览方法
ui·electron·安装包·截图控件·截屏控件
卡布鲁3 天前
把一个 Vite + Vue3 应用塞进 qiankun (React + Umi3) 主站:十个坑的复盘
前端·javascript·react.js
honkun63 天前
vue 表格组件 vxe-table 配置 ajax 请求自动加载数据与表单查询
vue.js·vxe-table
kybs19913 天前
全球灾害数据分析可视化 毕业设计-附源码66794
vue.js·spring boot·mysql·安全·django·c#·asp.net