如何访问由 gulp-gray-matter 插件创建的数据对象(使用 nunjucks 编译 html 文件时)
How do I access the Data Object created by the gulp-gray-matter plugin (when compiling html files with nunjucks)
我正在使用 nunjucks-render 作为前端 JavaScript 模板引擎。
我想从某些 .nunjuck 文件中读取正面物质数据,然后在将我的 .nunjuck(模板)文件编译成 .html 文件时使用该数据。
经过一些研究,我发现 gulp-gray-matter 是更快更好的正面物质提取插件之一。
我的问题是:现在如何访问额叶物质数据对象?
例如,我会在 .nunjucks 文件中将正面物质写为:
---
title: Welcome to ACME Co.
---
<title>{{ data.title }}</title>
最终 HTML 输出应该是:
<title>Welcome to ACME Co.</title>
我的gulfile.js设置如下:
var gulp = require('gulp'),
nunjucks = require('gulp-nunjucks-render')
gulpGrayMatter = require('gulp-gray-matter');
gulp.task("nunjucks", function(){
return gulp.src(src/templates/**/*.+(nunjucks|njk))
.pipe(gulpGrayMatter()) //send files through gray-matter plugin to extract frontal-matter
.pipe(nunjucks({
path: src/templates
}))
.pipe(gulp.dest(src));
});
默认情况下 gulp-gray-matter
将所有前端数据存储在流中每个文件的 data
属性 中。
此外,默认情况下 gulp-nunjucks-render
使用流中每个文件的 data
属性 中存在的数据。
所以您实际上不必在 Gulpfile 中做任何花哨的事情。这将起作用:
gulp.task('nunjucks', function(){
return gulp.src('src/templates/**/*.nunjucks')
.pipe(gulpGrayMatter())
.pipe(nunjucks())
.pipe(gulp.dest('dest'));
});
您必须正确访问 .nunjuck
模板中的数据,但是:
---
title: Welcome to ACME Co.
---
<title>{{ title }}</title>
我正在使用 nunjucks-render 作为前端 JavaScript 模板引擎。
我想从某些 .nunjuck 文件中读取正面物质数据,然后在将我的 .nunjuck(模板)文件编译成 .html 文件时使用该数据。
经过一些研究,我发现 gulp-gray-matter 是更快更好的正面物质提取插件之一。
我的问题是:现在如何访问额叶物质数据对象?
例如,我会在 .nunjucks 文件中将正面物质写为:
---
title: Welcome to ACME Co.
---
<title>{{ data.title }}</title>
最终 HTML 输出应该是:
<title>Welcome to ACME Co.</title>
我的gulfile.js设置如下:
var gulp = require('gulp'),
nunjucks = require('gulp-nunjucks-render')
gulpGrayMatter = require('gulp-gray-matter');
gulp.task("nunjucks", function(){
return gulp.src(src/templates/**/*.+(nunjucks|njk))
.pipe(gulpGrayMatter()) //send files through gray-matter plugin to extract frontal-matter
.pipe(nunjucks({
path: src/templates
}))
.pipe(gulp.dest(src));
});
默认情况下 gulp-gray-matter
将所有前端数据存储在流中每个文件的 data
属性 中。
此外,默认情况下 gulp-nunjucks-render
使用流中每个文件的 data
属性 中存在的数据。
所以您实际上不必在 Gulpfile 中做任何花哨的事情。这将起作用:
gulp.task('nunjucks', function(){
return gulp.src('src/templates/**/*.nunjucks')
.pipe(gulpGrayMatter())
.pipe(nunjucks())
.pipe(gulp.dest('dest'));
});
您必须正确访问 .nunjuck
模板中的数据,但是:
---
title: Welcome to ACME Co.
---
<title>{{ title }}</title>