Vue是时下比较流行的前端框架,Electron则能帮助我们使用web技术快速地创建桌面应用,本文记录了一些遇到的问题。

1. ReferenceError: __dirname is not defined

解决方法:

const win = new BrowserWindow({
    width: 800,
    height: 600,
    webPreferences: {
      nodeIntegration: true, // 设置此项为true,以启用node环境
      contextIsolation: false
    }
  })

2. TypeError: fs.existsSync is not a function

解决方法1:
使用window.require代替require

// let { ipcRenderer } = require("electron");
let { ipcRenderer } = window.require("electron");

解决方法2:
vue.config.js中配置webpack的target属性为electron-renderer

module.exports = {
    configureWebpack: (config) => {
        config.target = 'electron-renderer';
    }
}

使用import报错同样适用方法2

标签: Vue, Electron, fs.existsSync, __dirname, 报错

添加新评论