我从here完成了所有步骤:
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 :(得分:3)
您有/plugins/myplugin/myplugin.plugin.coffee
,然后使用"main": "./src/myplugin.plugin.coffee"
引用它 - 这会将插件文件预测到src
目录中,如下所示:/plugins/myplugin/src/myplugin.plugin.coffee
- 您需要纠正其中一个。
如果您可以将我链接到文档混淆的地方,我很乐意解决它。
DocPad还要求插件在package.json
文件中包含以下内容:
"keywords": ["docpad-plugin"]