ここで何が起こっているのか正確にはわかりませんが、しばらくの間私を悩ませてきました。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
でFunction
あり、その実装がsetOptions()
これの原因であるかどうかは少しわかりませんか?
何かご意見は?