Я провел более часа на этом, просмотрел несколько вопросов, но ответа нигде не было найдено.Грунт не смотрит файлы JS
У меня проблема при использовании часов в файлах javascript. Все остальные файлы просматриваются и задачи выполняются должным образом.
Если я запускаю по умолчанию с начала, concat и uglify работают отлично, но если я вношу какие-либо изменения в файл js, часы просто игнорируют его.
Это мой файл:
module.exports = function(grunt) {
// Project configuration.
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
concat: {
index: {
src: ['js/shared/*.js', 'js/index/*.js'],
dest: 'js/concat/index.js',
},
page: {
src: ['js/shared/*.js', 'js/page/*.js'],
dest: 'js/concat/page.js',
},
},
uglify: {
dist: {
files:{
'js/build/index.min.js': 'js/concat/index.js',
'js/build/page.min.js': 'js/concat/page.js',
}
}
},
sass: {
options: {
outputStyle: 'compressed',
},
dist: {
files: {
'css/main-unprefixed.css': 'sass/main.scss'
}
}
},
autoprefixer: {
global: {
src: 'css/main-unprefixed.css',
dest: 'css/main.css'
}
},
jade: {
compile: {
options: {
pretty: true
},
files: [{
expand: true,
cwd: '',
src: [ '_layouts/jade/*.jade' ],
dest: '_layouts',
flatten: true,
ext: '.html'
}]
}
},
shell: {
jekyllServe: {
command: "jekyll serve --no-watch"
},
jekyllBuild: {
command: "jekyll build"
}
},
open : {
build: {
path: 'http://localhost:4000',
app: 'Firefox'
}
},
watch: {
options: {
livereload: true
},
site: {
files: ["*.html", "**/*.html", "*.md", "**/*.md", "**/*.yml", "*.yml", "!_site/*.*", "!_site/**/*.*"],
tasks: ["shell:jekyllBuild"]
},
scripts: {
files: ["js/*.js", "js/**/*.js"],
tasks: ["concat", "uglify", "shell:jekyllBuild"]
},
jade: {
files: ["_layouts/jade/*.jade"],
tasks: ["jade"]
},
css: {
files: ["sass/*.scss", "sass/**/*.scss", "sass/**/**/*.scss"],
tasks: ["sass", "autoprefixer", "shell:jekyllBuild"]
}
}
});
require('load-grunt-tasks')(grunt);
// Default task(s).
grunt.registerTask("serve", ["shell:jekyllServe"]);
grunt.registerTask("default", ["open", "concat", "uglify", "sass", "autoprefixer", "jade", "shell:jekyllBuild", "watch"]);
};
Любая помощь высоко ценится.
В задаче просмотра попробуйте использовать этот шаблон: 'files: ['js/{, * /} *. Js']' вместо 'files: [" js/*. Js "," js/**/*. js "]'? –
@TonyBarnes Пробовал, что задача часов по-прежнему не регистрирует никаких изменений. – KreaTief
Это только сценарии, которые не просматриваются - правильно ли работают файлы HTML и CSS? Очевидно, это трудно отлаживать без кодовой базы. Я мог бы попытаться отделить задачу 'watch' от задачи' default' и отлаживать оттуда. –