2016-09-02 2 views
0

При создании веб-сайта я использовал ссылки на все мои сценарии индивидуально, и все работало нормально. Теперь я учусь использовать глоток и заметил, что после того, как я конкатенирую свои JS-файлы, некоторые скрипты перестают работать (опять же, все они работают при загрузке по отдельности).Сценарии перестают работать после gulp concat

Единственное, что я нашел в сети, это то, что мне может понадобиться конкатенация файлов в определенном порядке. Я попытался изменить порядок в задаче gulpfile.js безрезультатно. Я попытался удалить файлы один за другим в задаче gulpfile.js безрезультатно.

Кроме того, я сохраняю Modernizr и JQuery всегда в заголовке и загружаюсь отдельно (они НЕ объединены с другими), в то время как конкатенированный JS-файл находится в нижнем колонтитуле, поэтому загружается после.

HTML файл выглядит примерно так:

<!DOCTYPE html> 
    <html> 
    <head> 

     <meta ...> 
     <link...> 

     <script src="https://code.jquery.com/jquery-3.1.0.min.js"></script> 
     <script src="https://code.jquery.com/jquery-migrate-3.0.0.min.js"></script> 
     <script src="assets/scripts/modernizr.js"></script> 

     <title>Some Title</title> 

    </head> 

    <body> 

    WEBSITE CONTENT 

     <script src="assets/scripts/scripts.min.js"></script> /*Concatenated file*/ 

    </body> 
</html> 

Моего глоток задача (gulpfile.js) выглядит следующим образом (я отделил скрипты для конкатенации в массиве, так вы, ребята, можете увидеть файлы):

gulp.task('js', function(){ 
    return gulp.src([ 
     'assets/scripts/base/bootstrap.js', 
     'assets/scripts/base/retina.js', 
     'assets/scripts/base/smoothscroll.js', 
     'assets/scripts/base/waypoints.js', 
     'assets/scripts/base/wow.js', 
     'assets/scripts/plugins/bootstrap.filestyle.js', 
     'assets/scripts/plugins/jquery.counterup.js', 
     'assets/scripts/plugins/jquery.matchHeight.js', 
     'assets/scripts/plugins/lightcase.js', 
     'assets/scripts/plugins/slick.js', 
     'assets/scripts/plugins/global.js' 
    ]) 
    .pipe(plumber({ 
     errorHandler: function (error) { 
     console.log(error.message); 
     this.emit('end'); 
    }})) 
    .pipe(concat('scripts.js')) 
    .pipe(babel()) 
    .pipe(gulp.dest('assets/scripts/')) 
    .pipe(rename({suffix: '.min'})) 
    .pipe(uglify()) 
    .pipe(gulp.dest('assets/scripts/')) 
    .pipe(browserSync.reload({stream:true})) 
}); 

в настоящем время, сценарии, которые я заметил перестали работать, был lighcase.js (лайтбокс), jquery.matchHeight.js (соответствие высоты колонны) и slick.js (слайдер).

Редактировать: ошибок на моей консоли нет. Только сообщение «JQMIGRATE: Migrate установлено, версия 3.0.0».

Любая помощь будет оценена по достоинству. Через неделю, пытаясь найти логику этой проблемы, я отказываюсь от LOL. Помогите noob!

+0

Итак, они молча «перестают работать»? Или могут возникнуть ошибки в консоли? – zerkms

+0

Единственное сообщение, которое у меня есть на моей консоли: JQMIGRATE: Migrate установлен, версия 3.0.0. Но никаких красных предупреждений об ошибках. – user3163410

+0

Ну, убедитесь, что ваш скрипт даже загружен. Затем установите точку останова в точке входа и т. Д. – matmo

ответ

0

OMG, так много работы для отладки и, наконец, был только мой global.js путь, который был неправильно в моей gulpfile задаче ...

'assets/scripts/plugins/global.js' 

, который должен был быть:

'assets/scripts/base/global.js' 

Человек, я чувствую себя заторможенностью. Спасибо anyways за вас помочь парням ...: S

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