2015-09-02 3 views
1

Привет Я пытаюсь запустить задачу скриптов в глотках. Мой сценарии путь определяется следующим образом:

scripts: { 
     coffee: [ 
      'app/assets/scripts/**/*.coffee' 
     ], 
     js: [ 
      'src/js/*', 
      'src/js/**/*' 
     ], 
     map: ['src/js/**/*.map'] 
    }, 

Моих оригинальные пути файл расположены в корневом/SRC/JS/и я хочу, чтобы мои сценарии, которые будут помещены в их уменьшенной версии внутри корневых/приложения/активы/скриптов /.

Моя глотком задача заключается в следующем:

gulp.task('scripts', function() { 
    return gulp.src('app/scripts/**/*.js') 
     .pipe($.if('*.js', $.uglify({preserveComments: 'some'}))) 
     .pipe($.sourcemaps.init()) 
     .pipe($.concat('app.js')) 
     .pipe($.sourcemaps.write('./')) 
     .pipe(gulp.dest('app/assets/scripts')); 
}); 

But for some reason I keep getting this error 
[13:28:46] ReferenceError: $ is not defined 
    at Gulp.<anonymous> (C:\Users\Myuser\apps\myapp\gulpfile.js:165:9) 
    at module.exports (C:\Users\Myuser\apps\myapp\node_modules\gulp\node_ 
modules\orchestrator\lib\runTask.js:34:7) 
    at Gulp.Orchestrator._runTask (C:\Users\Myuser\apps\myapp\node_module 
s\gulp\node_modules\orchestrator\index.js:273:3) 
    at Gulp.Orchestrator._runStep (C:\Users\Myuser\apps\myapp\node_module 
s\gulp\node_modules\orchestrator\index.js:214:10) 
    at Gulp.Orchestrator.start (C:\Users\Myuser\apps\myapp\node_modules\g 
ulp\node_modules\orchestrator\index.js:134:8) 
    at C:\Users\Myuser\AppData\Roaming\npm\node_modules\gulp\bin\gulp.js:129:2 
0 
    at process._tickCallback (node.js:355:11) 
    at Function.Module.runMain (module.js:503:11) 
    at startup (node.js:129:16) 
    at node.js:814:3 

UPDATE

Эй, я думаю, вы оба правы. $ не был определен и должен быть $ = require('gulp-load-plugins')();. Однако теперь, когда я бег scripts, я получаю следующее сообщение об ошибке:

[15:24:46] TypeError: undefined is not a function 
    at Gulp.<anonymous> (C:\Users\Myuser\apps\myapp\gulpfile.js:166:13) 
    at module.exports (C:\Users\Myuser\apps\myapp\node_modules\gulp\node_ 
modules\orchestrator\lib\runTask.js:34:7) 
    at Gulp.Orchestrator._runTask (C:\Users\Myuser\apps\myapp\node_module 
s\gulp\node_modules\orchestrator\index.js:273:3) 
    at Gulp.Orchestrator._runStep (C:\Users\Myuser\apps\myapp\node_module 
s\gulp\node_modules\orchestrator\index.js:214:10) 
    at Gulp.Orchestrator.start (C:\Users\Myuser\apps\myapp\node_modules\g 
ulp\node_modules\orchestrator\index.js:134:8) 
    at C:\Users\Myuser\AppData\Roaming\npm\node_modules\gulp\bin\gulp.js:129:2 
0 
    at process._tickCallback (node.js:355:11) 
    at Function.Module.runMain (module.js:503:11) 
    at startup (node.js:129:16) 
    at node.js:814:3 

Опять же, другая расплывчатой ​​ошибка «неопределенная не является функция», это явное? Есть функция $ отсутствует?

+0

определение для '$' отсутствует как в вашем сценарии и по этому вопросу, что приводит меня к мысли, вы не определили '$'. –

+0

Что такое '' '' '' должно быть? – sma

+0

Спасибо, ребята, вы правы. См. Обновление выше. – HGB

ответ

2

Вы, вероятно, нужно использовать gulp-load-plugins пакет:

var $ = require('gulp-load-plugins')({lazy: true}); 
+0

Ufuk Вы были правы, см. Обновление выше. – HGB

Смежные вопросы