渲染器用于渲染内容。
概述
hexo.extend.renderer.register( name, output, function (data, options) { }, sync, );
|
参数 |
描述 |
name |
输入文件名扩展名(小写,不带前导. ) |
output |
输出文件名扩展名(小写,不带前导. ) |
sync |
同步模式 |
三个参数将传递到渲染函数
参数 |
描述 |
data |
包含两个属性:文件路径path 和文件内容text 。path 不一定存在。 |
option |
选项 |
callback |
回调函数,有两个参数err ,value 。 |
示例
异步模式
var stylus = require("stylus");
hexo.extend.renderer.register( "styl", "css", function (data, options, callback) { stylus(data.text).set("filename", data.path).render(callback); }, );
hexo.extend.renderer.register("styl", "css", function (data, options) { return new Promise(function (resolve, reject) { resolve("test"); }); });
|
同步模式
var ejs = require("ejs");
hexo.extend.renderer.register( "ejs", "html", function (data, options) { options.filename = data.path; return ejs.render(data.text, options); }, true, );
|
禁用 Nunjucks 标签
Nunjucks 标签{{ }}
或{% %}
(由标签插件使用)默认情况下会被处理,要禁用
function lessFn(data, options) { }
lessFn.disableNunjucks = true;
hexo.extend.renderer.register("less", "css", lessFn);
|