2015-12-23 22 views
8

Sto cercando di sviluppare una piccola applicazione angular2 elettroni sulla base di this tutorialWebpack non riesce a trovare il modulo 'elettrone'

Sembra che il loro è un certo errore con l'abbinamento di webpack, perché non posso richiedo/importare l'elettrone a distanza nel mio componente del renderer.

nel mio AppComponent faccio la seguente

import {remote} from 'electron'; 

mio Webpack Config

var path = require('path'); 
var webpack = require('webpack'); 
var CommonsChunkPlugin = webpack.optimize.CommonsChunkPlugin; 
var webpackTargetElectronRenderer = require('webpack-target-electron-renderer'); 

var config = { 
    debug: true, 

    devtool: 'source-map', 

    entry: { 
    'angular2': [ 
    'rxjs', 
    'reflect-metadata', 
    'angular2/core', 
    'angular2/router', 
    'angular2/http' 
    ], 
    'app': './src/app/renderer/bootstrap' 
}, 

    output: { 
    path: __dirname + '/build/', 
    publicPath: 'build/', 
    filename: '[name].js', 
    sourceMapFilename: '[name].js.map', 
    chunkFilename: '[id].chunk.js' 
    }, 

    resolve: { 
    extensions: ['','.ts','.js','.json', '.css', '.html'], 
    packageMains: ['webpack', 'browser', 'web', 'browserify', ['jam', 'main'], 'main'] 
    }, 

    module: { 
    loaders: [ 
     { 
     test: /\.ts$/, 
     loader: 'ts', 
     exclude: [ /node_modules/ ] 
     } 
    ] 
    }, 

    plugins: [ 
    new CommonsChunkPlugin({ name: 'angular2', filename: 'angular2.js', minChunks: Infinity }), 
    new CommonsChunkPlugin({ name: 'common', filename: 'common.js' }) 
    ] 
}; 

config.target = webpackTargetElectronRenderer(config); 
module.exports = config; 

Webpack getta il seguente errore

ERROR in ./src/app/renderer/components/app/app.ts 
(1,22): error TS2307: Cannot find module 'electron'. 
+0

Volevo solo dire che questo errore può verificarsi anche quando si ritorna a utilizzare una versione precedente di elettrone (ad esempio v0.30.6 per il supporto per serial-electron) quando erano ancora usando 'var app = require ('app');' ecc anziché 'const electron = require ('electron');' - vedi https://github.com/atom/electron/blob/v0.30.6 /docs/tutorial/quick-start.md – iX3

risposta

4

risolto

const electron = require('electron'); 
const remote = electron.remote; 
+1

Non funziona per me ... ottengo l'errore di sintassi vicino a un token imprevisto ('' var electron = require ('./') '... qualche idea? (Sto usando angular2 con l'ultima CLI basata sul webpack) – daveoncode

+0

Questo non funziona per me. Sto ancora ottenendo 'Errore non rilevato: impossibile trovare il modulo" elettrone "' – Hum4n01d

-1

Sei nuovo di TypeScript? L'hai installato? È possibile installarlo da:

npm install -g typescript 

vostre soluzioni è un soluzioni java script, che è un mod ok, se è quello che stai cercando, ma se si desidera utilizzare tipografico, allora si dovrebbe essere in grado di farlo lavorare usando "importa".

fare il tutorial in: https://www.npmjs.com/package/typescript

Inoltre, controllare: TS2307: Cannot find module 'angular2/core' while importing Angular2 on TypeScript

0

Prova ad aggiungere target: "electron-renderer" alla parte inferiore dell'oggetto module.exports nella vostra configurazione webpack. (il mio è stato creato tramite il CLI angolare)

Problemi correlati