我不确定这里发生了什么,但它一直困扰着我一段时间。节点降价解析器的marked
工作方式如下:
var marked = require('marked');
marked.setOptions({ mathjax : false });
这一切都有效。但是我正在构建一个插件系统,我想将标记的模块函数传递给另一个文件中的函数并在该函数中设置选项:
// main.js
var marked = require('marked');
var plugin = require('./plugin');
plugin(marked);
marked("# my markdown\n $$5 + 5$$", function(err, result) {
// this result still parses mathjax. Setting the option in the main
// file will disable mathjax.
console.log(result);
});
// plugin.js
module.exports = function(marked) {
marked.setOptions({ mathjax: false });
}
该marked
函数已正确传递给我的插件函数,并setOptions
调用了该函数,但是当我marked
随后在我的主脚本中使用时,未设置选项。如果我在主脚本中设置选项,它就可以工作。
我有点不确定marked
作为 aFunction
及其实现是否setOptions()
可能是罪魁祸首?
有什么想法吗?