vue3+vite搭建脚手架项目本地运行electron桌面应用

1.搭建脚手架项目

搭建Vue3+Vite+Ts脚手架-CSDN博客

2.创建完项目后,安装所需依赖包

npm i vite-plugin-electron electron@26.1.0

3.根目录下创建electron/main.ts

electron/main.ts

复制代码
/** electron/main.ts */

import { app, BrowserWindow } from "electron";

const createWindow = () => {
  const win = new BrowserWindow({
    width: 960,
    height: 600,
    webPreferences: {
      nodeIntegration: true, // 设置是否在页面中启用 Node.js 集成模式
      contextIsolation: false, // 设置是否启用上下文隔离模式。
    },
  });

  if (process.env.VITE_DEV_SERVER_URL) {
    win.loadURL(process.env.VITE_DEV_SERVER_URL); // 使用vite开发服务的url路径访问应用
  } else {
  }
};

app.whenReady().then(createWindow);

4.配置vite.config.ts

复制代码
import electron from "vite-plugin-electron";

electron([{ entry: "electron/main.ts" }])

5.配置package.json

删除:"type": "module",

添加:"main": "dist-electron/main.js",

6.运行项目 npm run dev 自动弹出窗口

7.解决问题

警告问题:The CJS build of Vite's Node API is deprecated. See https://vite.dev/guide/troubleshooting.html#vite-cjs-node-api-deprecated for more details.

解决方案

将 vite.config.ts 文件改名为 vite.config.mts

文件扩展名 .mts 明确地指示 Node.js 将该文件作为一个 ECMAScript Module (ESM) 来处理。

这与在 package.json 中设置 "type": "module" 相类似,都是为了确保 Node.js 以 ESM 格式解析和执行模块。

相关推荐
We་ct11 分钟前
深度剖析浏览器跨域问题
开发语言·前端·浏览器·跨域·cors·同源·浏览器跨域
weixin_4277716136 分钟前
前端调试隐藏元素
前端
threelab1 小时前
Three.js 代码云效果 | 三维可视化 / AI 提示词
开发语言·javascript·人工智能
爱上好庆祝2 小时前
学习js的第五天
前端·css·学习·html·css3·js
C澒2 小时前
IntelliPro 产研协作平台:基于 AI Agent 的低代码智能化配置方案设计与实现
前端·低代码·ai编程
一袋米扛几楼982 小时前
【Git】规范化协作:详解 GitHub 工作流中的 Issue、Branch 与 Pull Request 最佳实践
前端·git·github·issue
网络点点滴2 小时前
前端与后端的区别与联系
前端
yqcoder2 小时前
JavaScript 柯里化:把“大餐”拆成“小炒”的艺术
开发语言·javascript·ecmascript
每天吃饭的羊2 小时前
JSZip的使用
开发语言·javascript
EnCi Zheng3 小时前
M5-markconv自定义CSS样式指南 [特殊字符]
前端·css·python