Electron - 如何添加 React 开发工具

Electron - How to add react dev tool

将 React 开发工具添加到电子 window 的简单方法是什么?我尝试添加扩展哈希

BrowserWindow.addDevToolsExtension('path/to/extension/ade2343nd23k234bdb').15.01

但是当扩展更新时,我不得不手动更新main.js中的字符串。我正在寻找更好的方法。

addDevToolsExtension不是实例方法,所以需要调用BrowserWindow.addDevToolsExtension('path/to/extension').

这是 Electron <= 1.2.1 版本的解决方案

1- 在您的应用程序文件夹中

npm install --save-dev electron-react-devtools

2- 打开你的电子应用程序,点击(view/toggle 开发者工具)。在 控制台 选项卡中插入以下代码,然后 按回车键 :

 require('electron-react-devtools').install()

3- Reload/refresh 你的电子应用程序页面,你会看到反应开发工具出现。

4- 完成!


请参阅下面的屏幕截图

您可以像这样直接从 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()
})

以下解决方案对我有用 (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 文档调试部分中的建议全局安装了该包。发生的事情是它没有连接到您的应用程序,因为它不是您的 app-specific.

您需要在本地安装。

npm install --save-dev react-devtools

yarn add -D react-devtools