У меня есть Gruntfile.js
, где У меня есть строка, которую я повторяю много раз .Поэтому я решил продолжить с переменной, поэтому я ввел var file_path
.
module.exports = function(grunt) {
'use strict';
var today = new Date();
var year = today.getFullYear();
var file_path = 'here/there/';
grunt.initConfig({
jshint: {
all: [
'<%= file_path %>/assets/js/app.js',
'<%= file_path %>/admin/assets/js/admin.js',
]
},
});
require('load-grunt-tasks')(grunt);
grunt.registerTask('default', ['jshint']);
};
Но это не работает.Выдает следующую ошибку:
Running "jshint:all" (jshint) task
Warning: An error occurred while processing a template (file_path is not defined). Use --force to continue.
Когда я изменил <%= file_path %>
на <%= this.file_path %>
, процесс запускается, но путине решен.
Running "jshint:all" (jshint) task
>> 0 files linted. Please check your ignored files.
С другими зарегистрированными задачами подтверждено, что No source files were found.
.
КСТАТИ Iвключил year
в другую задачу, которая работает нормально.Прикрепленный снимок экрана:
Итак, я попробовал тот же синтаксис в задаче jshint
, как показано ниже:
all: [
file_path + 'assets/js/app.js',
file_path + 'admin/assets/js/admin.js',
]
Это приводит к тому же самому результату, когда файл не выполняется вообще.
Однако я попробовал следующий файл console.log, снаружи из grunt.initConfig()
:
grunt.log.write(file_path + 'assets/js/app.js');
Этоотображение правильного составного пути к файлу: here/there/assets/js/app.js
.
Как включить переменные в Gruntfile?