Um renderer
é utilizado para renderizar conteúdos.
Resumo
hexo.extend.renderer.register(name, output, function(data, options){ }, sync);
|
Argumento |
Descrição |
name |
Extensão do arquivo de entrada (caixa baixa, sem o . inicial) |
output |
Extensão do arquivo de saída (caixa baixa, sem o . inicial) |
sync |
Modo de sincronização |
Dois argumentos devem ser passados para a função renderer:
Argumento |
Descrição |
data |
Inclui dois atributos: Caminho do arquivo (path ) e o conteúdo do arquivo (text ). Não é necessário que path exista. |
option |
Opções |
Exemplo
Modo Assíncrono
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'); }); });
|
Modo Síncrono
var ejs = require('ejs');
hexo.extend.renderer.register('ejs', 'html', function(data, options){ options.filename = data.path; return ejs.render(data.text, options); }, true);
|