Angular ディレクティブ/モジュールのグローバル オプションを含めようとしています。
モジュールファイルでa .constant()
(または単に構成のオブジェクト) を使用できますが、モジュールは他の人がプロジェクトに含めるように設計されており、Bower を介してインストールできるため、グローバルオプションが吹き飛ばされるという考えは好きではありませんモジュールが更新されると離れます。.constant()
別のファイルに含めることができることは承知していますが、ユーザーはそれを含める必要があります。むしろ、モジュールにすべてを含めて (デフォルト値)、必要に応じてユーザーが拡張/変更できるようにしたいと考えています。
次のような jQuery プラグイン パターンと同様のアプローチを想定しています。
$('.myElement').myPlugin({
option1: '',
option2: ''
});
プラグイン
(function($) {
$.myPlugin = function( element, conf ) {
var $element = $(element);
var defaults = {
option1: '',
option2: '',
};
var config = $.extend( defaults, conf );
//...
};
$.fn.myPlugin = function(config) {
return this.each(function() {
if (undefined == $(this).data('myPlugin')) {
var plugin = new $.myPlugin(this, config);
$(this).data('myPlugin', plugin);
}
});
};
})(jQuery);