Electron: TypeError: BrowserWindow.addDevToolsExtension bukan sebuah fungsi

Dibuat pada 10 Feb 2020  ·  7Komentar  ·  Sumber: electron/electron

Detail Masalah

  • Versi Elektron:

    • 8.0.0

  • Sistem operasi:

    • Windows 10 Pro (1909) x64 OS Build 18363.418

Perilaku yang Diharapkan

Pasang React-Devtool

Perilaku Sebenarnya

TypeError: BrowserWindow.addDevToolsExtension bukan sebuah fungsi

Screenshot

image

8-x-y bug platforwindows

Komentar yang paling membantu

Ekstensi Devtron, React, dan Redux semuanya gagal dipasang di jendela Browser. Jika ada yang tahu solusinya, akan senang mendengarnya.

[electron] Added Extension: React Developer Tools
[electron] Added Extension: Redux DevTools
[electron] [41948:0228/141801.424392:ERROR:CONSOLE(1)] "Uncaught TypeError: Cannot read[electron] [41948:0228/141801.424392:ERROR:CONSOLE(1)] "Uncaught TypeError: Cannot read property 'panels' of undefined", source: chrome-extension://redux-devtools/js/devtools.bundle.js (1)
[electron] [41948:0228/141801.512131:ERROR:CONSOLE(40)] "Uncaught TypeError: Cannot read property 'inspectedWindow' of undefined", source: chrome-extension://react-developer-tools/build/main.js (40)
[electron] Unable to create basic Accelerated OpenGL renderer.
[electron] Unable to create basic Accelerated OpenGL renderer.
[electron] Core Image is now using the software OpenGL renderer. This will be slow.

Semua 7 komentar

Terima kasih telah meluangkan waktu untuk melaporkan masalah ini dan membantu menjadikan Elektron lebih baik.

Berikan pengujian mandiri yang dapat dijalankan oleh penguji untuk mereproduksi masalah tersebut. Hal ini membuat perbaikan masalah berjalan lebih lancar: tidak hanya memastikan hal yang benar telah diuji, tetapi juga mencegah triase dari bottlenecking dalam membuat penguji menulis pengujian baru untuk setiap masalah baru.

Saya menyetel label yang membutuhkan lebih banyak informasi untuk alasan di atas. Setelah Anda merespons, silakan @ saya di komentar tindak lanjut.

Terima kasih sebelumnya! Bantuan Anda sangat kami hargai.

@HalalTimur
Saya tidak tahu apakah Anda membutuhkan potongan di main.js, Tapi ini dia

const { app, BrowserWindow, ipcMain } = require('electron');
const path = require('path');
const url = require('url');
const scraper = require('./scraper.js');
const helpers = require('./electron/helpers.js');
const windowStateKeeper = require('electron-window-state');
const { autoUpdater } = require("electron-updater");

require('v8-compile-cache');
// for nodemon
process.env.IS_DEV ? require('electron-reload') : null;
// disable security warning
process.env['ELECTRON_DISABLE_SECURITY_WARNINGS'] = 'true';

// Application already running, so we close now
if (!app.requestSingleInstanceLock()) {
  app.quit()
}

app.removeAllListeners('ready');

let mainWindow
function createWindow() {
  // check for uppdate
  autoUpdater.checkForUpdatesAndNotify();

  // Load the previous state with fallback to defaults
  let mainWindowState = windowStateKeeper({
    defaultWidth: 1100,
    defaultHeight: 600
  });
  mainWindow = new BrowserWindow({
    'x': mainWindowState.x,
    'y': mainWindowState.y,
    'width': mainWindowState.width,
    'height': mainWindowState.height,
    minWidth: 1100,
    minHeight: 500,
    backgroundColor: '#121212',
    frame: false,
    icon: __dirname + '../build/icon.png',
    webPreferences: {
      webSecurity: false,
      nodeIntegration: true,
      webviewTag: true
    },
  });
  // Let us register listeners on the window, so we can update the state
  // automatically (the listeners will be removed when the window is closed)
  // and restore the maximized or full screen state
  mainWindowState.manage(mainWindow);

  // http://localhost:3000
  const startUrl = process.env.ELECTRON_START_URL || url.format({
    pathname: path.join(__dirname, '../build/index.html'),
    protocol: 'file:',
    slashes: true,
  });

  mainWindow.loadURL(startUrl);
  // in dev mode
  if (process.env.ELECTRON_START_URL) {
    // open devTools
    mainWindow.webContents.openDevTools({ mode: 'undocked' });
  }
  // in build mode
  if (process.env.IS_DEV) {
    // close menubar
    mainWindow.setMenuBarVisibility(false);
  }

  //clear session + cookies on start to avoid blocking requests
  mainWindow.on('closed', () => {
    mainWindow = null
  });

  mainWindow.webContents.on('new-window', function (e, url) {
    e.preventDefault();
  })

  // Add React Devtool
  if (app.isReady() && process.env.ELECTRON_START_URL) {
    console.log('___INSTALL React Devtool_____')
    BrowserWindow.addDevToolsExtension("./extensions/react")
      .then(name => console.log('INSTALLING', name))
      .catch(err => console.log('Install React-Devtool err', err));
  }
}
app.setAppUserModelId('com.MyMovies.app');
app.on('ready', createWindow);
app.on('window-all-closed', () => {
  app.quit();
})

Ekstensi Devtron, React, dan Redux semuanya gagal dipasang di jendela Browser. Jika ada yang tahu solusinya, akan senang mendengarnya.

[electron] Added Extension: React Developer Tools
[electron] Added Extension: Redux DevTools
[electron] [41948:0228/141801.424392:ERROR:CONSOLE(1)] "Uncaught TypeError: Cannot read[electron] [41948:0228/141801.424392:ERROR:CONSOLE(1)] "Uncaught TypeError: Cannot read property 'panels' of undefined", source: chrome-extension://redux-devtools/js/devtools.bundle.js (1)
[electron] [41948:0228/141801.512131:ERROR:CONSOLE(40)] "Uncaught TypeError: Cannot read property 'inspectedWindow' of undefined", source: chrome-extension://react-developer-tools/build/main.js (40)
[electron] Unable to create basic Accelerated OpenGL renderer.
[electron] Unable to create basic Accelerated OpenGL renderer.
[electron] Core Image is now using the software OpenGL renderer. This will be slow.

@ stevenroussey-privicy Kami dapat menginstal ekstensi react dan redux di aplikasi kami melalui paket electron-devtools-installer yang dibuat oleh @MarshallOfSound (terima kasih padanya 🙏) tetapi devtools terkadang tidak muncul dengan jenis kesalahan yang sama .. .

[35280:0324/122320.140:ERROR:CONSOLE(1)] "Uncaught TypeError: Cannot read property 'panels' of undefined", source: chrome-extension://redux-devtools/js/devtools.bundle.js (1)
[35280:0324/122320.233:ERROR:CONSOLE(40)] "Uncaught TypeError: Cannot read property 'inspectedWindow' of undefined", source: chrome-extension://react-developer-tools/build/main.js (40)

Rasanya seperti tab ekstensi dibuat setelah ekstensi dimuat di BrowserWindow. Satu-satunya kesalahan yang saya temukan di backend terkait dengan penyimpanan chrome tetapi mungkin bukan penyebab masalahnya.

Exception has occurred: Error
Error: ENOENT: no such file or directory, open "\AppData\Roaming\AppName\Chrome Storage\redux-devtools-sync.json"

Kami membuka alat pengembang pada acara did-frame-finish-load

win.webContents.on('did-frame-finish-load', () => {
  win.webContents.openDevTools();
});

Kami menggunakan metode penginstal yang sama. Ini menginstal dengan baik, tetapi tidak akan berjalan. Kesalahan yang sama. Bahkan jika saya membuka devtools secara manual, jadi ini bukan masalah waktu di sana.

Kami menggunakan jendela layar splash. Dari apa yang saya tahu, ini berfungsi dengan baik di jendela pertama yang dibuat, tetapi gagal untuk jendela lain. Bisakah orang lain memverifikasi?

Apakah halaman ini membantu?
0 / 5 - 0 peringkat