2017-05-25 8 views
2

gulpを使用してejsテンプレートをhtmlファイルにコンパイルしていますが、私のjsonデータファイルの場所を教えてください。 私はそれは私がリテラル文字列としてパスになろうとするものを取るEJSがgulpを使用してJSONデータを取得する

gulp.task('ejs', function() { 
    return gulp.src('src/views/pages/index.ejs') 
    .pipe(ejs(
     { media: 'src/js/data/data.json' }, 
     { ext:'.html' })) 
    .on('error', gutil.log) 
    .pipe(gulp.dest('build/')) 
    .pipe(browserSync.reload({ 
     stream: true 
    })) 
}); 

以下のようなgulp-ejsを使用するようにしてください。これをgulpの外側で行う方法とjsonデータを渡すgulpの方法がありますか?

答えて

0

これは私の一部の2つの問題でしたが、いくつか試行錯誤して解決策を見つけました。

まず、私は私のJSONファイルが間違ってインポートされた、私は一息でそれをインポートしないでしまったが、私は私のjavascriptのファイルでそれをインポートするとき、後に、私は以下のようにそれをやった:私の一口を残し

const media = require('src/js/data/data.json').media; // media was the name of the object I needed from the json file

gulp-ejsのためのタスク、誰もがgulp-ejsを使用していると問題に実行されている場合は、あなたがどこが希望空のオブジェクトを残しているこの

gulp.task('ejs', function() { 
    return gulp.src('src/views/pages/index.ejs') 
    .pipe(ejs(
     {}, 
     { ext:'.html' })) 
    .on('error', gutil.log) 
    .pipe(gulp.dest('build/')) 
    .pipe(browserSync.reload({ 
     stream: true 
    })) 
}); 

のように見えますあなたがそうでない場合でも、すべてのデータをインポートします。

関連する問題