电子反应样板:窗口.电子不存在错误



我使用的是electron-react-boilerplate v4.0.0我已经从preload.js中暴露了这个电子api,以便在渲染过程中使用。preload.js

当尝试使用"window.electron. ipcreender . printticket ()">

Hello React Component

我有错误:"窗口。"窗口"类型上不存在电子;typeof globalThis"。

@Daniel,

试试这个:-

编辑索引。-

import { render } from "react-dom";
import App from "./App";

render(<App />, document.getElementById("root"));

变成这样:-

import { render } from "react-dom";
import App from "./App";
declare global {
interface Window {
electron: any;
}
}
render(<App />, document.getElementById("root"));

现在可以使用window了。电子在渲染器的任何地方。这为我解决了这个问题。你也可以把它添加到App.js文件中。

虽然我还没有测试过,你也可以这样做:-

preload.js

const { contextBridge, ipcRenderer } = require('electron');
contextBridge.exposeInMainWorld('electron', {
hworld: "Hello world" // window.electron.hworld is a string ("Hello world")
});

index.tsx

import { render } from "react-dom";
import App from "./App";
declare global {
interface Window {
electron: {
hworld: string // Since you know window.electron.hworld is a string
}
}
}
render(<App />, document.getElementById("root"));

相关内容

  • 没有找到相关文章

最新更新