2015-11-21 28 views
6

Sto costruendo un'app di elettroni e attualmente utilizzo browserify per i file di rendering (pagina web) come qualsiasi altro front-end javascript. Vorrei anche utilizzare browserify per raggruppare i file di processo principali. Tuttavia, browswerify non è in grado di trovare l'elettrone integrato nei moduli come appunti, ipc, finestra del browser, app, ecc ...browserify file di processo principale di app electron bundle

Nel mio file main.js che funge da punto di ingresso per l'app di elettroni. Ho:

const ipc = require('ipc'); 
const clipboard = require('clipboard'); 
const BrowserWindow = require('browser-window'); 
const app = require('app'); 
const yargs = require('yargs'); 

const yargs carichi bene così com'è nella cartella node_modeuls e browserify in grado di risolvere questo. Tuttavia, gli altri quattro elementi non possono essere trovati da browserify e quindi falliscono la mia build.

[11:49:17] Finished 'development' after 17 ms 
Error: Cannot find module 'ipc' from '<path>' 
Error: Cannot find module 'clipboard' from '<path>' 
Error: Cannot find module 'browser-window' from '<path>' 
Error: Cannot find module 'app' from '<path>' 

Qualche suggerimento?

risposta

4

Con browserify è possibile impostare le opzioni "ignoreMissing" e "detectGlobals" che consentono a browserify di ignorare i moduli int integrati che vengono caricati automaticamente nell'app electron.

browserify({ 
    entries: './src/main.js', 
    extensions: ['.js'], 
    ignoreMissing: true, 
    detectGlobals: false, 
    bare: true, 
    debug: false 
}) 
+0

Avevo lo stesso problema nel tentativo di richiedere il modulo 'desktopCapturer' all'interno di un modulo browserify, che volevo utilizzare nel processo di rendering. Non è stato possibile trovare 'desktopCapturer' durante il tentativo di raggruppare tutti i miei moduli browserify. La tua risposta è stata la soluzione al problema. Funziona alla grande. +1 – DavidDomain

+0

Dove metti questo codice? – jtlindsey