我正在使用一个电子反应样板,我感兴趣的是从我的一个反应性组件文件中获取应用程序的名称。
我试过了
import {app} from 'electron'
const name = app.getName()但我明白错误
模块“./app/
/root.tsx”的热更新失败。最后处理的文件:"./app/components/Modal/Text.tsx“。
我猜电子不能从“渲染器”进入?访问这些数据的最佳方法是什么?
发布于 2020-08-13 01:13:28
TLDR:向主进程发送一条消息,并让它返回一条包含应用程序名称的消息。
你是正确的,你不能从渲染器获得应用程序的名称。
所以我会向主进程发送一条消息,请求应用程序名,然后让主进程发送回应用程序名。
这是代码的外观:
renderer.js
var ipcRenderer = require('electron').ipcRenderer;
// Send message.
ipcRenderer.send('asynchronous-message', 'getAppName');
// Recieve app name.
ipcRenderer.on('asynchronous-message', function (evt, messageObj) {
console.log(messageObj); // This will contain the app name.
});main.js
var ipcMain = require('electron').ipcMain;
var app = require('electron').app;
ipcMain.on('asynchronous-message', function (evt, messageObj) {
// Send message back to renderer.
if (messageObj == 'getAppName') {
evt.sender.webContents.send('asynchronous-message', app.getName());
}
});https://stackoverflow.com/questions/63386516
复制相似问题