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路由指定的组件页面

相关推荐
爱上python的猴子几秒前
chrome中的copy xpath 与copy full xpath的区别
前端·chrome
Lysun0011 小时前
dispaly: inline-flex 和 display: flex 的区别
前端·javascript·css
山禾女鬼0011 小时前
Vue 3 自定义指令
前端·javascript·vue.js
麦麦大数据1 小时前
知识图谱中医知识问答系统|养生医案综合可视化系|推荐算法|vue+flask+neo4j+mysql
vue.js·知识图谱·推荐算法
啊卡无敌1 小时前
Vue 3 reactive 和 ref 区别及 失去响应性问题
前端·javascript·vue.js
北桥苏1 小时前
Spine动画教程:皮肤制作
前端
涵信1 小时前
第九节:React HooksReact 18+新特性-React 19的use钩子如何简化异步操作?
前端·javascript·react.js
Aaaaaaaaaaayou1 小时前
浅玩一下 Mobile Use
前端·llm
这个昵称也不能用吗?1 小时前
react-native搭建开发环境过程记录
前端·react native·cocoapods
hy_花花1 小时前
Vue3.4之defineModel的用法
前端·vue.js