非常に小さなコアを保持し、プラグインを介して拡張できるライブラリを開発したいとします。
だから私は基本的に次の規模の何かを思いついた:
(function(window){
window.SomeLibrary =(function(){
var api = {
init: function(){
console.log('hi');
privateFunction();
},
plugin: function(callback) {
callback.call();
}
};
var privateFunction = function() {
console.log('im a private method');
};
return api;
}());
})(window);
SomeLibrary.init();
SomeLibrary.plugin(function(){
console.log('im a plugin');
privateFunction(); //fails;
});
プラグインコールバックにSomeLibraryプライベートメソッドとパブリックメソッドを実行させるにはどうすればよいですか?
前もって感謝します。