渲染引擎(Renderer)

  1. 概要
  2. 范例
    1. 非同步模式
    2. 同步模式

渲染引擎用于渲染内容。

概要

hexo.extend.renderer.register(name, output, function(data, options){
}, sync);
参数 描述
name 输入的扩展名(小写,不含开头的 .
output 输出的扩展名(小写,不含开头的 .
sync 同步模式

渲染函数中会传入两个参数:

参数 描述
data 包含两个属性:文件路径 path 和文件内容 textpath 不一定存在。
option 选项

范例

非同步模式

var stylus = require('stylus');

// Callback
hexo.extend.renderer.register('styl', 'css', function(data, options, callback){
  stylus(data.text).set('filename', data.path).render(callback);
});

// Promise
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);

文章标题:渲染引擎(Renderer)

文章字数:179

本文作者:牵猪的仓鼠

发布时间:2017-03-12, 19:35:02

最后更新:2017-03-13, 21:04:04

原始链接:http://s.amlove.cn/2017/03/12/hexo/api/renderer/

版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。

目录

喜欢就点赞,疼爱就打赏