(アーカイブ)Matreshka.js-3つの可能性

今回は、記事の代わりに、Matryoshka APIの3つの重要な側面を説明するビデオを作成することにしました。 これはパイロットビデオであり、コミュニティから好意的な反応がある場合は、おそらく「X in 60 seconds」の形式で、いくつかのビデオチュートリアルを録画する計画があります。

ビデオには次のことが記載されています。

1.一方向/双方向のデータバインディング( bindNode )を実装するメソッド。
2.一部のデータと他のデータの依存関係( calc )。
3.プロパティの変更をリッスンして、任意のコードを実行する機能。



マトリョーシカは、データのバインドと表示に選択された方法を批判されることがあります。 より正確には、bindNodeメソッドと、新しいコンポーネントの代わりにセレクターを使用するか、HTMLコードで直接ロジックの説明を行うと、開発者に疑問が生じます。

this.bindNode('key', '.selector', binder); 

ビデオには、この質問に対する答えがあります。ビューは、データ、イベント、およびデータをドキュメントに出力する方法のソースにすぎません。 このアプローチの利点は、ビューに煩わされることなく、データが変更されたときに何が起こるかを考えずにデータを操作できることです。

これは、以下を含むコレクションにも適用されます(ビデオでは、コレクションの操作については何も言われていません)。 いくつかのルールを設定し、コレクションが変更されると、ビュー自体が反応し、アプリケーションロジックは変更に応答するイベントハンドラーに含まれます。

 this.on('modify', function() { //   ,  - }); this.push(obj); 

フレームワークは、私のすべてを束ねておくという通常の怠inessと不本意のおかげで作成されました。 アプリケーションは、テーブルプロセッサのセルの説明と同じ方法で、順番に作成されます。AはBに依存します。 BはCに依存します。 AはBが何に依存しているかを知りません。 CはBに依存するものを知りません。A、B、Cの代わりに、ビューとデータを置き換えることができます。

さらに、マトリョーシカを使用すると、データの出所(コード、ビュー、コンソール)およびデータの出所(ビュー、ハンドラーなど)を考慮することなく、最初にデータの責任を負うすべてのものを記述できます。バインディングを記述します。 これは非常に便利です。

リポジトリ
ロシア語のドキュメント

見てくれてありがとう。

Source: https://habr.com/ru/post/J270437/


All Articles