3

次のように、モジュラー パターンを使用して JavaScript アプリケーションを構築したかったのです。

APP = (function() {
    // Private stuff
    var _privateVariable = 'private',
        _priv = 'priv'

    _privateMethod = function(){ /* */ };

    // Exposed API
    return {
        publicVariable : 'public',
        publicMethod   : function(){ 
             return _privateVariable
        };
    }());

次に、プラグインのようなモジュールを介してアプリケーションを拡張できるようにしたいと考えています。たとえば、jQuery を使用します。

$.extend(true, APP, (function() {
    // Child private stuff
    var _privateVariable = 'childPrivate',

    // Exposed API
    return {

    }()))

私が達成しようとしているのは、次のいずれかです。

  1. 延長して呼び出すAPP.publicMethod()と、戻りたいのですが、そうで'childPrivate'はありません'private'
  2. _priv拡張公開 APIからアクセスできること。

要約すると、親モジュールで定義されたプライベート変数が、子のプライベート メンバーとして子モジュールに継承されることを望みます。

4

1 に答える 1

0

この構造では、それはできません。javascript で継承を実現する方法に関する John Resig のすばらしい投稿をご覧ください: http://ejohn.org/blog/simple-javascript-inheritance/

于 2013-09-05T21:06:37.587 に答える