如何使用“electron-devtool-installer”包将“React Performance DevTools”作为chrome扩展添加到电子应用程序中

4ktjp1zp  于 2022-12-08  发布在  Electron
关注(0)|答案(2)|浏览(161)

我正在尝试使用electron-devtool-installer将“react-performance-devtool”扩展添加到电子应用程序。
当我尝试使用文档中提到的一个扩展时,它工作正常,但使用任何其他扩展时,我会遇到错误。
我正在尝试这样的方法:

const installer = require("electron-devtools-installer");
  const forceDownload = !!process.env.UPGRADE_EXTENSIONS;
  const extensions = [
    "REACT_DEVELOPER_TOOLS",
    "REDUX_DEVTOOLS",
    "REACT_PERFORMANCE_DEVTOOLS"
  ];

  return Promise.all(
    extensions.map(name => installer.default(installer[name], forceDownload))
  ).catch(console.log);
};

我收到以下错误:

Error: Invalid extensionReference passed in: "undefined"
z9smfwbn

z9smfwbn1#

const REACT_PERFORMANCE_DEVTOOLS = {
  id: "fcombecpigkkfcbfaeikoeegkmkjfbfm",
  electron: "^4.0.5"
};

const installExtensions = async () => {
  const installer = require("electron-devtools-installer");
  const forceDownload = !!process.env.UPGRADE_EXTENSIONS;
  const extensions = [
    "REACT_DEVELOPER_TOOLS",
    "REDUX_DEVTOOLS",
    "REACT_PERF",
    REACT_PERFORMANCE_DEVTOOLS
  ];

  return Promise.all(
    extensions.map(name =>
      installer.default(installer[name] || name, forceDownload)
    )
  ).catch(console.log);
};

作为名称传递的REACT_PERFORMANCE_DEVTOOLS对我有效。

4xy9mtcn

4xy9mtcn2#

在我的例子中,我使用了REACT_DEVTOOLS而不是REACT_DEVELOPER_TOOLS
没有突出显示。
electron-devtools-installer习惯于不好的做法,因为命名不一致:

VUEJS_DEVTOOLS
VUEJS3_DEVTOOLS
REDUX_DEVTOOLS
MOBX_DEVTOOLS

但是:

APOLLO_DEVELOPER_TOOLS
REACT_DEVELOPER_TOOLS

甚至更多!

CYCLEJS_DEVTOOL

相关问题