問題タブ [revealing-module-pattern]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
340 参照

javascript - Javascript モジュール パターン - Object.create

ここで正確に何が起こっているのかについて少し混乱しています。

この単純なコードを考えると:

この簡単な操作に続いて:

したがって、返されたオブジェクトフォーム Object.create に対して実行された操作は、そのオブジェクトのプロトタイプに影響を与えることに気付いたので、新しいオブジェクトを作成すると、プロトタイプが変更され、「変更された」バージョンになります。

これは多くのレベルで間違っているようです。ここで何が起こっているのか説明できる人はいますか?

この動作は、次のパターンを使用して再現することはできません:

したがって、ここでは $.extend のせいだと思います。

どんな入力でも素晴らしいでしょう!

0 投票する
1 に答える
1613 参照

javascript - モジュールのパターン構造を明らかにするのに似た TypeScript コード

書いた JavaScript コードを TypeScript に変換したいと考えています。私は、JavaScript 開発者として、TypeScript の構文と考え方に慣れていません。

私が頭を悩ませているのは、Revealing Module Pattern を使用するコードを TypeScript に変換するのに苦労したことです。

一例を以下に示します。

私が考えた1つの回避策はこれでした:

これは機能しますが、醜いです。

これを改善する方法はありますか?

0 投票する
0 に答える
26 参照

javascript - モジュールパターンを明らかにすることからの戻り値

私は今日モジュールパターンを明らかにすることを学んでおり、今のところ問題ありません。しかし、明らかにするモジュールパターン関数が別の明らかにするモジュールパターン内から呼び出されたときに、呼び出し元のパターン関数に値を返すことができるかどうか疑問に思っていますか?

たとえば、いくつかの関数を含むロケーション モジュール パターンがあり、それを別のモジュール パターンで使用したいとします。そのコードは次のとおりです。

位置公開モジュールのパターン

私の他の公開モジュール パターン (以下) 内で、getUserLocation 関数 (別名 getCoords) を呼び出しており、現在、ユーザーの場所を細かく記録しています (myLocation)。

ただし、console.log(myLocation) を変更して myLocation を返し、コンソール ログの場所 (関数 handleUserData 内) を返すと、undefined になります。

私の理論では、ユーザーの場所を取得し、パーク公開モジュールのパターン関数内で使用したいと考えています。

だから私の質問は、ある明らかにするモジュールパターンから別のパターンに値を返すことは可能ですか? そうでない場合、質問に役立つ他の方法を調査する必要がありますか?

編集

コメントのヘルプから、次を使用してこの問題を修正できました。

位置

公園

0 投票する
2 に答える
328 参照

javascript - 関数の実行を遅らせないJavascriptの約束

Chrome で ES6 JavaScript の約束を使用していますが、関数 _getStatus()内で実行された約束が成功ハンドラーで結果引数を返さない 理由を理解するのに苦労しています。これにより、「完了」を含むアラート ボックスが表示されます。代わりに、「未定義」という警告ボックスが表示されます。

0 投票する
1 に答える
1080 参照

javascript - Require.js と Revealing Module パターンによる JavaScript の継承

質問:

過去 2 週間、オンとオフを問わず調査してきた一見単純な質問 (私はこれらすべてに慣れていないので、簡単に行ってください!):

Require.js と Revealing Module パターンを使用する場合、JavaScript で継承を適切に実装するにはどうすればよいでしょうか?


例:

以下は、ある種の ' Component'の基本クラスであるモジュールの例です。

次に、CakeComponentすべてを継承しComponent、メソッドとプロパティを編集/追加できるようにする必要がある実装を実装します。

第一に、それが完全に理にかなっているのかどうかはわかりませんが、第二に、どこにでもこの冗長性があり、 andメソッドCakeComponentを「再公開」しなければならなかったため、私の CakeComponent は少し気持ち悪いです。initupdate

私は本当にこのようなものを好むでしょう(これは意味をなさないことに気づきました、それは本当に単なる疑似コードです):

ヒントや提案をいただければ幸いです。ありがとう。


詳細

  • defineたぶん、ラッパー内で常にクラス オブジェクトを作成する必要がありますか? 人々がこれを行うのを見たことがありますが、この問題に遭遇するまでは不要だと思われました。
  • .call()関数オブジェクトのメソッドは、このコンテキストでまったく役に立ちますか? たとえば、Component.call()
  • @Bergi以下をご覧ください:

0 投票する
1 に答える
58 参照

javascript - モジュールパネルを表示するための適切な大文字小文字の規則は何ですか (javascript)

明らかにするモジュールパターンを使用する場合、関数とプロパティの正しい開始ケースは何ですか? ここでは、関数は小文字、プロパティは大文字で示していますが、それは正しくありません。

0 投票する
1 に答える
19 参照

javascript - 検証ディレクティブで使用するプラグイン関数をどのようにパッケージ化すればよいですか?

この回答で提案されている以下の検証ディレクティブに取り組んでいます。

次に、このディレクティブを の形式で html 要素に適用するとbk-ng-validation="phoneNumber"、ディレクティブは次の関数を呼び出します。

これaddValidationFor_phoneNumberは現在、概念実証のためだけにグローバル名前空間にありますが、明らかにするモジュールを使用して、かなりの数の検証関数になる可能性があるものを整理することを検討しています。または、Angular 内で作業しているため、従うべき他のパターンはありますか? 公開モジュールの定数を宣言してそれをディレクティブに挿入するようなことができると思いますが、間違った道を進む前にこの質問をしたいと思いました。