Модуль

  • 2018-12-03

Модуль представляет собой контейнер, используемый для обработки файлов в указанной папке. Hexo использует два модуля: hexo.source и hexo.theme. Первый используется для обработки папки с исходниками source с последующим применением указанной темы из папки themes.

Обработка файлов (Load Files)

Модули используют два способа загрузки файлов: process и watch. process обрабатывает все файлы в папке по команде. watch обрабатывает файлы при их изменении.

1
2
3
4
5
6
7
box.process().then(function(){
// ...
});

box.watch().then(function(){
// Можно вызвать команду box.unwatch() после, чтобы остановить отслеживание файлов.
});

Сопоставление папок (Path Matching)

Модули поддерживают много способов для нахождения обрабатываемых папок. Можно использовать регулярные выражения, функции или строки шаблонов Express-style. Например:

1
2
posts/:id => posts/89
posts/*path => posts/2015/title

Подробная информация (eng): util.Pattern.

Обработчики

Обработчик является важнейшим элементом модуля и служит для преобразования файлов. Можно использовать сопоставление папок как описано выше для ограничения обрабатываемых файлов. Новый обработчик добавляется методом addProcessor

1
2
3
box.addProcessor('posts/:id', function(file){
//
});

Модуль передаёт содержимое соответствующих файлов обработчикам. Информацию можно читать прямо из аргумента file в обратный вызов (callback):

Свойство Описание
source Полный путь к файлу
path Относительный путь к файлу модуля
type Тип файла. Возможные значения create, update, skip, delete.
params Информация о сопоставлении путей.

Модуль содержит и другие методы, не нужно делать прямые вызовы к файлу самостоятельно.

Метод Описание
read Чтение файла
readSync Синхронное чтение файла
stat Получение статуса файла
statSync Синхронное получение статуса файла
render Обработка файла
renderSync Синхронная обработка файла

扫码领红包

2018双11超级红包
PC访问链接: 2018双11超级红包 预售开启 汇聚全球潮流新品

淘口令:¥20Y0b6q4eHR¥ (复制此行再打开手机淘宝客访问)

最后更新: 2018年12月03日 09:29

原始链接: https://cyc.oy99.com/ru/api/box.html

× 多少都行~
打赏二维码
×
  • {title}