load-grunt-config не находит целевую задачу

Я хочу разбить большой файл gruntfile на более мелкие части и пришел к этим статьям: https://github.com/firstandthird/load-grunt-config http://ericnish.io/blog/how-to-neatly-separate-grunt-files/ Однако, похоже, я упускаю что-то очевидное. Когда я выдаю "тестовую задачу", задача не найдена. Очевидно, я делаю что-то очень неправильно, но не понимаю. Вот содержимое файлов, максимально урезанных:

gruntfile.js:
module.exports = function(grunt) {
 var path = require('path');

 require('load-grunt-config')(grunt, {
    configPath: path.join(process.cwd(), 'grunt3'),
        init: true
  });
};

grunt3/testtask.js:
module.exports = {
  copy: {
    main:   
    {
        files: 
        [{
           src:  "test1.txt",
           dest: "test2.txt"
        }]
    }
  }
};

I added an aliases file:
module.exports = {
  'default': [],
  'mytesttask': [
    'testtask'
  ]
};

по умолчанию найдено. Для mytesttalk я получаю "тестовая задача не найдена". Разве aliases.js не должен выполнять registerTask для имени файла (testtask) или для "copy" (я также пытался использовать "copy" в качестве целевой задачи)? В соответствии с параметром --config-debug существует объект конфигурации с именем "testtask". Что мне здесь не хватает?

Благодарю.

Приложение: нашел эту очень простую и понятную статью на ту же тему, которая показывает, как упростить еще больше. Просто опять не работает. Задание, указанное в псевдонимах, не найдено. например, 'mytesttask': [ 'testtask'] -> testtask не найден, хотя существует файл grunt/testtask.js, который содержит задачу из исходного файла gruntfile. Что мне не хватает?

1 ответ

С помощью этой превосходной статьи http://mattbailey.io/a-beginners-guide-to-grunt-redux.html и одного из авторов этого модуля, комментирующего github, я, наконец, нашел недостаток в своем мышлении. Файлы организованы не по задачам или целям, а по основным модулям. Таким образом, вы должны назвать их copy.js (из grunt-contrib-copy), cssmin.js (из grunt-contrib-cssmin), concat.js (из grunt-contrib-concat) и поместить различные цели в эти файлы, Не наоборот (как я думал). Может быть, это ясно для других из документации, это было не для меня. Эта статья Мэтта Бэйли действительно замечательная, поскольку она показывает только то, что действительно необходимо. Статья Эрика Нисио, на которую я ссылался выше, является излишне сложной, так как не содержит файла псевдонимов.

Другие вопросы по тегам