$q.electron
在使用Electron模式进行开发时,可以在Vue文件中访问this.$q.electron
。 导入时,这是electron
对象的别名。
export default {
methods: {
minimize () {
this.$q.electron.remote.BrowserWindow.getFocusedWindow().minimize()
// 等价于
const { remote } = require('electron')
remote.BrowserWindow.getFocusedWindow().minimize()
}
}
}
WARNING
访问this.$q.electron
要求Node集成保持"on"状态.
读写本地文件
使用Electron的一大优点是可以访问用户的文件系统。 这使您可以在本地系统上读写文件。 为了避免Chromium的限制并写入应用内部文件,请确保使用electron的API,特别是app.getPath(name)函数。 这种辅助方法可以让你获得系统目录的文件路径,例如用户的桌面,系统临时文件等。
我们可以使用专门为我们的应用保留的userData目录,因此我们可以确信其他程序或其他用户交互不应该篡改此文件空间。
import path from 'path'
import { remote } from 'electron'
const filePath = path.join(remote.app.getPath('userData'), '/some.file')
调试主流程
在开发中运行应用时,您可能已经注意到主进程中提及远程调试器的消息。 自从发布electron@^1.7.2版本以来,electro引入了对Inspect API的远程调试,并且可以通过打开Google Chrome提供的链接, 或通过另一个使用缺省的5858端口远程连接到该进程的调试器轻松访问 ,比如Visual Studio Code。
┏ Electron -------------------
Debugger listening on port 5858.
Warning: This is an experimental feature and could change at any time.
To start debugging, open the following URL in Chrome:
chrome-devtools://devtools/bundled/inspector.html?experiments=true&v8only=true&ws=127.0.0.1:5858/22271e96-df65-4bab-9207-da8c71117641
┗ ----------------------------
应用程序无法在具有暗色主题的Windows上打开
某些Chrome DevTools扩展程序不适用于electron 6+上的Windows暗色主题。 Quasar在默认的electron-main.js
中提供了一种变通方法,该方法可在启动应用程序之前删除DevTools Extensions
。
import { app, BrowserWindow, nativeTheme } from 'electron'
try {
if (process.platform === 'win32' && nativeTheme.shouldUseDarkColors === true) {
require('fs').unlinkSync(require('path').join(app.getPath('userData'), 'DevTools Extensions'))
}
} catch (_) { }
请关注electron错误报告以获取更多详细信息。