Мой плагин gulp с помощью through2 возвращает файл в странном XML-подобном формате
Я пишу плагин для Gulp, и для обработки файла мне нужно получить его полный путь. Я использовал через пакет 2, затем подготовил processFile(file)
функция, но в качестве аргумента от through2 он получает файл в странном XML-подобном формате вместо объекта типа file.path
, file.encoding
и так далее.
Как я могу получить file.path, когда through2 возвращает каждый файл в следующем формате:
<File "relative/path/to/file/aaa.js" ...
Полный код:
var through = require('through2');
module.exports = function() {
return through.obj(function(file, encoding, callback) {
function processFile(file){
console.log(file); // returns <File "relative/path/to/file/aaa.js" ...
}
callback(null, processFile(file));
});
};
1 ответ
То, что вы получаете на консоли, просто как File
объекты превращаются в строки console.log
, что происходит при выполнении console.log(file)
, В конечном итоге, inspect
Метод вызывается, и вы получаете результаты, которые вы видите (кстати, это не XML).
Если я использую ваш код и дампа в консоль file.path
Я получаю правильные значения. То же самое с file.base
а также file.relative
,