zhuhao_dev #77
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "electron-app",
|
"name": "electron-app",
|
||||||
"version": "1.0.0",
|
"version": "1.0.1",
|
||||||
"description": "An Electron application with Vue",
|
"description": "An Electron application with Vue",
|
||||||
"main": "./out/main/index.js",
|
"main": "./out/main/index.js",
|
||||||
"author": "example.com",
|
"author": "example.com",
|
||||||
|
@ -22,6 +22,7 @@
|
||||||
"@electron-toolkit/preload": "^3.0.1",
|
"@electron-toolkit/preload": "^3.0.1",
|
||||||
"@electron-toolkit/utils": "^3.0.0",
|
"@electron-toolkit/utils": "^3.0.0",
|
||||||
"@element-plus/icons-vue": "^2.3.1",
|
"@element-plus/icons-vue": "^2.3.1",
|
||||||
|
"@electron/remote": "^2.1.2",
|
||||||
"@vitejs/plugin-vue-jsx": "^4.0.0",
|
"@vitejs/plugin-vue-jsx": "^4.0.0",
|
||||||
"@vueuse/core": "^10.11.0",
|
"@vueuse/core": "^10.11.0",
|
||||||
"crypto-js": "^4.2.0",
|
"crypto-js": "^4.2.0",
|
||||||
|
@ -44,7 +45,6 @@
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@electron-toolkit/eslint-config": "^1.0.2",
|
"@electron-toolkit/eslint-config": "^1.0.2",
|
||||||
"@electron/remote": "^2.1.2",
|
|
||||||
"@rushstack/eslint-patch": "^1.10.3",
|
"@rushstack/eslint-patch": "^1.10.3",
|
||||||
"@vitejs/plugin-vue": "^5.0.5",
|
"@vitejs/plugin-vue": "^5.0.5",
|
||||||
"@vue/eslint-config-prettier": "^9.0.0",
|
"@vue/eslint-config-prettier": "^9.0.0",
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
/**
|
/**
|
||||||
* @description: electron 封装的工具函数
|
* @description: electron 封装的工具函数
|
||||||
*/
|
*/
|
||||||
// const { ipcRenderer } = window.electron || {}
|
const { ipcRenderer } = window.electron || {}
|
||||||
// import { ipcRenderer } from 'electron' // 渲染器里面可以使用ipcRenderer
|
// import { ipcRenderer } from 'electron' // 渲染器里面可以使用ipcRenderer
|
||||||
|
|
||||||
|
|
||||||
// const path = require('path')
|
const path = require('path')
|
||||||
const Remote = require('@electron/remote')
|
const Remote = require('@electron/remote')
|
||||||
|
|
||||||
// 常用变量
|
// 常用变量
|
||||||
|
@ -16,11 +16,11 @@ const isDev = process.env.NODE_ENV !== 'production'
|
||||||
/**
|
/**
|
||||||
* @description 消息发送-nodejs 消息发送
|
* @description 消息发送-nodejs 消息发送
|
||||||
* @form src/main/tool.js 来源
|
* @form src/main/tool.js 来源
|
||||||
* @param {*} key 消息key
|
* @param {*} key 消息key
|
||||||
* tool-sphere:create 创建-悬浮球
|
* tool-sphere:create 创建-悬浮球
|
||||||
* @param {*} data 参数
|
* @param {*} data 参数
|
||||||
* url:路由地址,width:窗口宽度,height:窗口高度,option:自定义选项
|
* url:路由地址,width:窗口宽度,height:窗口高度,option:自定义选项
|
||||||
* @returns
|
* @returns
|
||||||
*/
|
*/
|
||||||
export function ipcMsgSend(key, data) {
|
export function ipcMsgSend(key, data) {
|
||||||
return new Promise((resolve) => {
|
return new Promise((resolve) => {
|
||||||
|
@ -37,7 +37,7 @@ export function ipcMsgSend(key, data) {
|
||||||
* @param {*} type 类型
|
* @param {*} type 类型
|
||||||
* tool-sphere 创建-悬浮球
|
* tool-sphere 创建-悬浮球
|
||||||
* @param {*} data 参数
|
* @param {*} data 参数
|
||||||
* @returns
|
* @returns
|
||||||
*/
|
*/
|
||||||
export const createWindow = async (type, data) => {
|
export const createWindow = async (type, data) => {
|
||||||
if (!type) return console.error('createWindow: type is null')
|
if (!type) return console.error('createWindow: type is null')
|
||||||
|
@ -97,7 +97,7 @@ export function toolWindow({url, isFile, isConsole, option={}}) {
|
||||||
let height = option?.height || 600
|
let height = option?.height || 600
|
||||||
const mainWin = Remote.getCurrentWindow() // 获取主窗口对象
|
const mainWin = Remote.getCurrentWindow() // 获取主窗口对象
|
||||||
const devUrl = `${BaseUrl}${url}`
|
const devUrl = `${BaseUrl}${url}`
|
||||||
const buildUrl = `file://${__dirname}/index.html${url}`
|
const buildUrl = path.join(__dirname, 'index.html#')
|
||||||
const urlAll = isDev ? devUrl : buildUrl
|
const urlAll = isDev ? devUrl : buildUrl
|
||||||
return new Promise((resolve) => {
|
return new Promise((resolve) => {
|
||||||
const config = {
|
const config = {
|
||||||
|
@ -113,8 +113,9 @@ export function toolWindow({url, isFile, isConsole, option={}}) {
|
||||||
}
|
}
|
||||||
// 创建-新窗口
|
// 创建-新窗口
|
||||||
let win = new Remote.BrowserWindow(config)
|
let win = new Remote.BrowserWindow(config)
|
||||||
if (!!isFile) win.loadFile(urlAll) // 加载文件
|
console.log(urlAll)
|
||||||
else win.loadURL(urlAll) // 加载url
|
if (!!isFile) win.loadFile(urlAll+url) // 加载文件
|
||||||
|
else win.loadURL(urlAll,{hash: url}) // 加载url
|
||||||
win.once('ready-to-show', () => {resolve(win)})
|
win.once('ready-to-show', () => {resolve(win)})
|
||||||
// 主窗口关闭事件
|
// 主窗口关闭事件
|
||||||
mainWin.once('closed', () => { win.destroy()})
|
mainWin.once('closed', () => { win.destroy()})
|
||||||
|
|
Loading…
Reference in New Issue