2016-01-20 70 views
0

我无法弄清楚如何显示来自Electron的打开文件对话框。无法使用Electron和Angular打开文件对话框

当我使用所提供的例子中,我得到一个错误:

Error: Cannot find module 'electron' from '/Users/michaelcalkins/Code/codesketcher/assets/js'

https://github.com/atom/electron/blob/master/docs/api/dialog.md

我使用browserify构建应用程序什么我尝试只是生成错误。

Gulpfile内容:

var elixir = require('laravel-elixir') 
elixir.config.assetsPath = 'assets' 

elixir(function(mix) { 
    mix.sass('app.scss', 'dist/css') 
     .browserify('app.js', 'dist/js') 
}) 

回答

0

事实证明,你一饮而尽transpile很重要的方式。无论出于何种原因,Laravel Elixir打破了构建。使用不同的gulp文件,我能够使其完美工作。

var gulp = require('gulp'), 
    babel = require('gulp-babel'), 
    run = require('gulp-run'), 
    rename = require('gulp-rename'), 
    watch = require('gulp-watch'), 
    sass = require('gulp-ruby-sass'), 
    autoprefixer = require('gulp-autoprefixer'), 
    cssnano = require('gulp-cssnano'), 
    uglify = require('gulp-uglify'), 
    imagemin = require('gulp-imagemin'), 
    rename = require('gulp-rename'), 
    concat = require('gulp-concat'), 
    notify = require('gulp-notify'), 
    cache = require('gulp-cache'), 
    del = require('del') 

gulp.task('scripts', function() { 
    return gulp.src('./assets/js/app.js') 
     .pipe(babel()) 
     .pipe(rename('index.js')) 
     .pipe(gulp.dest('./')) 
}) 

gulp.task('styles', function() { 
    return sass('assets/sass/app.scss', { style: 'expanded' }) 
     .pipe(autoprefixer('last 2 version')) 
     .pipe(gulp.dest('dist/css')) 
     .pipe(rename({suffix: '.min'})) 
     .pipe(cssnano()) 
     .pipe(gulp.dest('dist/css')) 
     .pipe(notify({ message: 'Styles task complete' })) 
}) 

gulp.task('run', ['default'], function() { 
    return run('electron .').exec() 
}) 

gulp.task('watch', ['scripts', 'styles'], function (cb) { 
    watch('assets/js/**/*.js', function() { 
     gulp.run('scripts') 
    }) 

    watch('assets/scss/**/*.scss', function() { 
     gulp.run('styles') 
    }) 
}) 

gulp.task('default', ['scripts', 'styles'])