我正在努力让Docpad Contactify插件按预期工作,但我没有运气,我希望在这里得到一些帮助,如果可能的话。
所以有问题的插件是https://github.com/thaume/docpad-plugin-contactify并且它没有通过nom正确安装,所以我通过/ plugins /添加了它。无论如何,当它运行干净时,我得到一个'ReferenceError:docpad未定义'由此行引起...
config = docpad.getConfig().plugins.contactify
所以我把它改成了......
config = @getConfig()
然而我收到以下错误......
TypeError: Object function ContactifyPlugin() {
return ContactifyPlugin.__super__.constructor.apply(this, arguments);
} has no method 'getConfig'
只是想找一种发送邮件的方法,这是唯一能够实现这一目标的Docpad插件,所以我非常渴望让它运行起来。任何输入都将不胜感激!
答案 0 :(得分:0)
contactify和docpad版本似乎存在问题。我让它在docpad 6.46下运行,一切似乎都没问题。当我更新到6.66时,contactify破了。似乎有两个相关的变化。插件的上下文似乎已更改,因此function(BasePlugin)
上下文中的docpad不再直接可用,而docpad本身不再使用。getConfig
方法(而是需要访问{{} 1}}属性直接)
在config
方法中移动违规代码似乎解决了docpad本身是插件serverExtend
上下文属性的上下文问题。
this
Coffeescript版本:
ContactifyPlugin.prototype.serverExtend = function(opts) {
docpad = this.docpad;
config = docpad.config.plugins.contactify;
smtp = nodemailer.createTransport('SMTP', config.transport);
var server;
server = opts.server;
...