0

Я сделал все шаги от here:Как создать плагин DocPad?

1) создали простой плагин /plugins/myplugin/myplugin.plugin.coffee с этим кодом:

module.exports = (BasePlugin) -> 
    class MyPlugin extends BasePlugin 
    name: 'myplugin' 
    renderBefore: ({templateData}) -> 
     templateData.foo = 'bar' 

2) /plugins/myplugin/package.json

{ 
    "name": "myplugin", 
    "version": "2.0.0", 
    "main": "./src/myplugin.plugin.coffee" 
} 

3) /src/documents/index.html.eco

<p><%= @foo %></p> 

Но плагин не работает. Он не находится в журнале DocPad info: Plugins: eco и вызывает ошибку ReferenceError: foo is not defined.

Что я пропустил?

+0

Я нашел проблему. Каждый плагин DocPad должен иметь '' ключевые слова ": {" docpad-plugin "}' свойство в 'package.json', иначе docpad игнорирует его. – 0xBADC0FFEE

ответ

3

/plugins/myplugin/myplugin.plugin.coffee Вы и затем ссылаться на него с "main": "./src/myplugin.plugin.coffee" - который expectes файл плагина, чтобы быть внутри директории src как так: /plugins/myplugin/src/myplugin.plugin.coffee - вам нужно исправить одну из них.

Если вы можете связать меня с местом, где документация смутила это, я с радостью исправлю это.

DocPad также требует плагинов, чтобы иметь следующие в их файле package.json:

"keywords": ["docpad-plugin"]

+0

Я просто не знал о '' ключевых словах: ["docpad-plugin"] ', это была причина. myplugin.plugin.coffee был внутри src / – 0xBADC0FFEE

 Смежные вопросы

  • Нет связанных вопросов^_^