2014-04-11 3 views
0

Я использую grunt.js в первый раз, и у меня возникают проблемы с настройкой sass watch. Я успешно установил node.js и grunt, и я смог получить его в конкатенации и минимизации всех моих файлов javascript в один файл. Затем я перешел на попытку заставить его смотреть и компилировать мои sass-файлы, и я не могу понять, почему я продолжаю получать эту ошибку в моей командной строке (ясно, что есть синтаксическая ошибка, но я не знаю, где она находится?Ошибка синтаксиса в Gruntfile.js - Sass Watch

здесь моя ошибка в командной строке: Mandy в MandysMac в ~/Desktop/Dropbox/ВЕБСАЙТАМИ/Портфолио/WP-контентом/темы/mandy_made_this_theme на мастер * $ хрюкать

/Users/Mandy/Desktop/Dropbox/WEBSITES/Portfolio/wp-content/themes/mandy_made_this_theme/Gruntfile.js:27 
    watch: { 
    ^^^^^ 
Loading "Gruntfile.js" tasks...ERROR 
>> SyntaxError: Unexpected identifier 
Warning: Task "default" not found. Use --force to continue. 

Aborted due to warnings. 

Вот мой пакет .json file:

{ 
    "name": "mandy-made-this-theme", 
    "version": "0.1.0", 
    "devDependencies": { 
    "grunt": "~0.4.2", 
    "grunt-contrib-jshint": "~0.6.3", 
    "grunt-contrib-nodeunit": "~0.2.0", 
    "grunt-contrib-uglify": "~0.2.2", 
    "grunt-contrib-sass": "^0.7.3", 
    "grunt-contrib-watch": "^0.6.1" 
    } 
} 

И самое главное, вот мой пехотинец файл:

module.exports = function(grunt) { 

// Project configuration. 
    grunt.initConfig({ 
    pkg: grunt.file.readJSON('package.json'), 
    uglify: { 
    options: { 
    banner: '/*! <%= pkg.name %> <%= grunt.template.today("yyyy-mm-dd") %> */\n' 
    }, 
    build: { 
    src: ['working/jquery-2.1.0.min.js, working/jquery-ui-1.10.4.custom.min.js', 'working/jquery.smooth-scroll.min.js', 'working/isotope.pkgd.min.js', 'working/scripts.js'], //input 
    dest: 'scripts/build/scripts.min.js' //output 
    } 
    }, 

    sass: {        
    dist: {       
     options: {      
     style: 'expanded' 
     }, 
     files: {      
     'style.css': 'sass/style.scss'  
     } 
    } 
    } 

    watch: { 
     css: { 
     files: '**/*.scss', 
     tasks: ['sass'], 
     options: { 
      livereload: true, 
     } 
     } 
    } 

    }); 

// Load the plugin that provides the "uglify" task. 
grunt.loadNpmTasks('grunt-contrib-uglify'); 
grunt.loadNpmTasks('grunt-contrib-sass'); 
grunt.loadNpmTasks('grunt-contrib-watch'); 

// Default task(s). 
grunt.registerTask('default',['uglify', 'sass', 'watch']); 

} 

ответ

1

Вы пропускаете запятую после sass объекта

 'style.css': 'sass/style.scss'  
     } 
    } 
    }, // added , here 

    watch: { 
     css: { 
     files: '**/*.scss', 
+0

так, если вы уже используете хрюкать, добавлять задачи, как ** jshint ** проверить ваши код, если ваша IDE не поддерживает его. – przno

+0

Хотя, если в вашем файле Grunt есть синтаксическая ошибка, задача jshint grunt не поможет вам ее исправить :-) – steveax

+0

Да, и, к сожалению, отсутствующая запятая после моих sass watch была не проблема. – MandyMadeThis

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