【发布时间】:2022-03-21 23:04:31
【问题描述】:
将反应开发工具添加到电子窗口的简单方法是什么?我尝试添加扩展哈希
BrowserWindow.addDevToolsExtension('path/to/extension/ade2343nd23k234bdb').15.01
但是当扩展更新时,我不得不手动更新 main.js 中的字符串。我正在寻找更好的方法。
【问题讨论】:
标签: electron
将反应开发工具添加到电子窗口的简单方法是什么?我尝试添加扩展哈希
BrowserWindow.addDevToolsExtension('path/to/extension/ade2343nd23k234bdb').15.01
但是当扩展更新时,我不得不手动更新 main.js 中的字符串。我正在寻找更好的方法。
【问题讨论】:
标签: electron
【讨论】:
TypeError: Cannot read property 'isReady' of undefined
你可以像这样直接从你的 main.js 文件中添加 react devtools
const installExtensions = async () => {
const installer = require('electron-devtools-installer')
const forceDownload = !!process.env.UPGRADE_EXTENSIONS
const extensions = [
'REACT_DEVELOPER_TOOLS',
'REDUX_DEVTOOLS',
'DEVTRON'
]
return Promise
.all(extensions.map(name => installer.default(installer[name], forceDownload)))
.catch(console.log)
}
app.on('ready', async () => {
if (dev && process.argv.indexOf('--noDevServer') === -1) {
await installExtensions()
}
createWindow()
})
【讨论】:
addDevToolsExtension不是实例方法,所以需要调用BrowserWindow.addDevToolsExtension('path/to/extension')。
【讨论】:
以下解决方案对我有用 (https://github.com/MarshallOfSound/electron-devtools-installer#usage) -
npm install electron-devtools-installer --save-dev
or
yarn add electron-devtools-installer -D
import installExtension, { REDUX_DEVTOOLS } from 'electron-devtools-installer';
// Or if you can not use ES6 imports
/**
const { default: installExtension, REACT_DEVELOPER_TOOLS } = require('electron-devtools-installer');
*/
const { app } = require('electron');
app.whenReady().then(() => {
installExtension(REDUX_DEVTOOLS)
.then((name) => console.log(`Added Extension: ${name}`))
.catch((err) => console.log('An error occurred: ', err));
});
【讨论】:
如果您在启动 react-devtools 时看到空白组件,可能是因为您已按照 react-native 文档调试部分中的建议全局安装了该软件包。发生的情况是它没有连接到您的应用,因为它不是您的应用特定的。
你需要在本地安装。
npm install --save-dev react-devtools
或
yarn add -D react-devtools
【讨论】: