1
gulp-jade를 gulp-jade와 함께 사용하려고하지만 GULP-DATA Plugin과 관련된 오류가 발생합니다. 여기 gulp-jade와 gulp-data를 함께 사용하는 멍에
내 gulpfile.jsvar gulp = require('gulp'),
plumber = require('gulp-plumber'),
browserSync = require('browser-sync'),
jade = require('gulp-jade'),
data = require('gulp-data'),
path = require('path'),
sass = require('gulp-ruby-sass'),
prefix = require('gulp-autoprefixer'),
concat = require('gulp-concat'),
uglify = require('gulp-uglify'),
process = require('child_process');
gulp.task('default', ['browser-sync', 'watch']);
// Watch task
gulp.task('watch', function() {
gulp.watch('*.jade', ['jade']);
gulp.watch('public/css/**/*.scss', ['sass']);
gulp.watch('public/js/*.js', ['js']);
});
var getJsonData = function(file, cb) {
var jsonPath = './data/' + path.basename(file.path) + '.json';
cb(require(jsonPath))
};
// Jade task
gulp.task('jade', function() {
return gulp.src('*.jade')
.pipe(plumber())
.pipe(data(getJsonData))
.pipe(jade({
pretty: true
}))
.pipe(gulp.dest('Build/'))
.pipe(browserSync.reload({stream:true}));
});
...
// Browser-sync task
gulp.task('browser-sync', ['jade', 'sass', 'js'], function() {
return browserSync.init(null, {
server: {
baseDir: 'Build'
}
});
});
입니다 그리고 이것은
{
"title": "This is my website"
}
내가 오류 index.jade.json 이름, 기본 JSON 파일입니다 :
Error in plugin 'gulp-data'
[object Object]
난 더 이상 오류를받지 못했습니다을 그러나'index.jade'에'p = title'을 입력하면 생성 된 html 파일에 빈'p' 태그 만 생깁니다. 내가 gulp-jade 문서를 확인했는데'geJsonData' 변수를 사용하는 이유는 그들이 [여기] (https://www.npmjs.org/package/gulp-jade#use-with-gulp-data)를 추천하기 때문입니다. -https-www-npmjs-org-package-gulp-data-) – Cos
그건 이상합니다. 그것은 나를 위해 작동합니다. 꿀꺽 꿀꺽 술에있는 예는 구식입니다. – Heikki
터미널에서'gulp' 명령을 실행할 때만 실제로 작동한다는 것을 알았습니다. 태스크 실행시 오브젝트 컨텐츠를 얻고 데이터를 삽입 할 수있는 방법이 있습니까? – Cos