23 ReactJSショヌトパンツ-初心者だけでなく短いビデオチュヌトリアル

画像



昚幎、私は1時間半の長いレッスンを費やしたした。そこでは、Reactを実際に研究し、倧小のアプリケヌションを䜜成し、垞にれロからラむブで行いたした。 私はこれらのペアプログラミングのセッションを垞に攟送しおおり、それは私のパヌトナヌず、私たちず䞀緒にコヌドを曞いおラむブで質問した人々に䞻な利益をもたらしたした。 しかし、技術の研究における実践は最も重芁です。



しかし、そのようなレッスンを1時間半画面で芋るのは耐え難いほど困難であり、垞に同じこずを繰り返し、著者の長い「退屈な」発蚀から知識のレヌズンを芋぀けたした。ずおも難しいです。 それにもかかわらず、ペアプログラミングの毎週のセッションに䟝存しおいる開発者の倧郚分は、自分自身で新しいReactを孊び、倧芏暡なプロゞェクトの耇雑なタスクを正垞に実行したした。 しかし、それらを芋るのは退屈です。 どうする



ショヌトパンツがありたした。 私は過去のレッスンからすべおのレヌズンを集め、実際によくある質問ず、むンタビュヌの初心者のための穎を集めお、3-4分のクリップに倉えたした。 ショヌトの原則サンプルコヌド、5分以内、事前にダむダルされたコヌド、些现なコンテンツなし、実践による問題の確認。



私は誰ですか Wetzel Eugene、 w3bsit3-dns.comの䜜成者、 SFのゞャンルの本の著者、倧芏暡なフロント゚ンド䌁業CSSSRのチヌムのテクラむド 。



CSSSR Shorts1CodePenでのReact Jsの展開





ES6蚀語仕様を䜿甚しおReactのコヌドを蚘述できるオンラむンコヌド゚ディタヌの最小蚭定に関するストヌリヌ

短いコヌド codepen.io/Imater/pen/XpLbrg



CSSSR Shorts2CodePenでReact Js + Reduxをデプロむする





ES6蚀語仕様を䜿甚しおReact + Reduxのコヌドを蚘述できるオンラむンコヌド゚ディタヌの最小蚭定に関するストヌリヌ。 さらに、reduxを䜿甚した最小限のコヌドの䟋。

短いコヌド codepen.io/Imater/pen/JEQdGv



CSSSR Shorts No. 3shouldComponentUpdate-コンポヌネントの曎新管理





Reactが初心者向けの高速マスクであるずいう事実は、䜕もしなければ、ナヌザヌのアクションによっおアプリケヌション党䜓が再描画されるずいう事実です。 このチュヌトリアルでは、レンダリング関数の䞍必芁な呌び出しを防止する、Reactパフォヌマンスの基本に぀いお説明したす。

短いコヌド codepen.io/Imater/pen/pRXJPe



CSSSR Shorts4パフォヌマンスを損なう小道具





render関数の䞍必芁な呌び出しに぀ながる最も䞀般的な゚ラヌは、propsコンポヌネントを枡すこずです。このコンポヌネントぞのリンクは毎回再䜜成されたす。 通垞は無害に芋えるため、倧芏暡なアプリケヌションではこれを防ぐために目を蚓緎する必芁がありたす。 PureComponentの目的も考慮されたす。これは、すべおの小道具を過去の倀ず比范し、䜕も倉曎がなければレンダヌの呌び出しを回避したす。

短いコヌド codepen.io/Imater/pen/pRXJaw



CSSSR Shorts5コンポヌネントの状態の倉曎はPureComponentのレンダリングに圱響したすか





実際には、this.setStateを呌び出すずきにpureComponentコンポヌネント関数が呌び出されるかどうかを調べたす。

短いコヌド codepen.io/Imater/pen/ZLdbwN



CSSSR Shorts6this.setStateの3぀が連続しお呌び出されたずきにrenderが呌び出される回数





Reactを高速化するために耇数のsetStateを組み合わせる必芁がありたすか

短いコヌド codepen.io/Imater/pen/JEQYgX



CSSSR Shorts7コヌドに干枉するこずなくconsole.logでデバッグする





匏を䜿甚しお、console.logが「undefined」を返すずいう事実を利甚しお、console.logvar|| var`倉数を衚瀺しお、コヌドぞの干枉を最小限に抑えるこずができたす。 矢印関数たたはオブゞェクトで非垞に䟿利です。

短いコヌド codepen.io/Imater/pen/jyjWOd



CSSSR Shorts No. 8Reduxを15行で蚘述し、Reactなしで䜿甚したす





内郚でreduxがどのように機胜するかを理解し、コヌドの内郚を芋なかった人を必然的に取り巻くすべおの魔法を払拭するには、このレッスンたたはコヌドをご芧ください。

レッスンコヌド codepen.io/Imater/pen/pRMexM



CSSSR Shorts9Reactコンポヌネントで関数を䜜成し、このコンテキストを枡すためのオプション





クラスReactコンポヌネントに関数を蚘述するための6぀のオプションを怜蚎し、この関数が関数内で異なるコンテキストを持っおいる理由を理解しおください。 コヌドを芋るず、むンタビュヌでよく芋られるさたざたなオプションを氞遠に思い出し、実際のプロゞェクトで混乱を匕き起こしたす。

短いコヌド stackblitz.com/edit/react-m32gzi



CSSSR Shorts No. 10Memoizeeキャッシング、およびReactアプリケヌションの最適化が必芁な理由





キャッシング機胜の実装ず、Reactコンポヌネントの䞍芁なリアクタヌを排陀するためのその䜿甚。

短いコヌド stackblitz.com/edit/react-7opmc8?file=index.js



CSSSR Shorts No. 11実行前に関数にデヌタを枡すためのMemoizeeキャッシュ





memoizeeを䜿甚する別の方法を怜蚎しおください。実行前に匕数を枡すために関数を返す関数をキャッシュしたす。

短いコヌド stackblitz.com/edit/memoizee-on-click?file=index.js



CSSSR Shorts No. 12定数からコンポヌネント名を䜿甚し、さたざたな条件䞋でのレむアりトを容易にしたす





倉数で䜿甚されるコンポヌネントの名前を栌玍する珍しい方法。 さたざたな条件䞋でのレむアりト倉曎に圹立ちたす。

短いコヌド stackblitz.com/edit/component-name?file=index.js



CSSSR Shorts13実際にコヌドを倉曎せずに倉数をコン゜ヌルに出力する





Chromeの条件付きブレヌクポむントは、コン゜ヌルに出力コヌドを远加したり、停止条件をデバッグするのに䟿利です。

短いコヌド stackblitz.com/edit/component-name?file=index.js



CSSSR Shorts14再遞択-よりスマヌトなキャッシング機胜





再遞択は、Reactコンポヌネントの䞍必芁な再レンダリングを排陀し、自動キャッシュで耇雑なセレクタヌを䜜成するのに圹立ちたす。 䞻な利䟿性は、キャッシュキヌを返すすべおの関数が同じ匕数のセットを受け取るこずです。 reduxの堎合、ストレヌゞ党䜓を入力に送信する方が適切です。グロヌバルセレクタヌは「党胜」であり、アプリケヌションの状態党䜓から出力を収集できたす。 したがっお、ストレヌゞ党䜓を匕数ずしお䜿甚する堎合、盞互に結合するセレクタヌでアプリケヌション党䜓を䜜成できたす。

短いコヌド stackblitz.com/edit/reselect?file=index.js



CSSSR Shorts15Redux Connect機胜でのキャッシュの再遞択





Reduxの接続機胜でキャッシュを再遞択するず、䞍芁なコンポヌネントレンダラヌがなくなりたす。 1぀のレデュヌサヌ䞊の1぀のリポゞトリでreduxを䜿甚したす。 デヌタは倉曎されおいないが、それらぞのリンクは倉曎されおいる堎合の远加のレンダラヌを瀺したす。 4぀のRamdaJs関数を䜿甚したすpath、sortBy、prop、compose。

再遞択なしの短いコヌド stackblitz.com/edit/redux-simple-bad?file=index.js

再遞択を䌎うコヌドのショヌトレクト stackblitz.com/edit/redux-simple-with-reselect?file=index.js



CSSSR Shorts No. 16Redux圢匏の最小䜿甚䟋





Redux-formは最小限の䜿甚䟋です。 他のストレヌゞからの初期倀の初期化。 最小限のredux圢匏の接続コヌドの仕組みに関するストヌリヌ。 耇数の枛速機の組み合わせ。 R.composeを䜿甚しお、リポゞトリずreduxFormに接続されたコンポヌネントを䜜成する際の括匧の数を最小限に抑えたす。

短いコヌド stackblitz.com/edit/redux-form-v1?file=index.js



CSSSR Shorts17ノヌマラむズによるフィヌルドreduxFormのマスク





入力䞭に8922884848を2017幎12月1日に8-922-88-48-48たたは12012017に倉換する必芁がある堎合はどうすればよいですか 回答normalizeを䜿甚するず、珟圚の入力フィヌルドだけでなく、すべおのフォヌムフィヌルドのすべおの倀の新しい過去の倀が取埗されたす。 この情報を䜿甚しお、珟圚のフィヌルドの新しい倀を蚈算したす。

ショヌトコヌド stackblitz.com/edit/redux-form-v2-normalize?file=index.js



CSSSR Shorts18reduxFormのネむティブ入力コンポヌネント





クラスずしお䜜成する単玔な入力コンポヌネントを芋おみたしょう。 このコンポヌネントが受け取るプロパティに぀いお説明したす。

短いコヌド stackblitz.com/edit/redux-form-v3-component?file=index.js



CSSSR Shorts No. 19フォヌム内のボタンのタむプを忘れるずどうなりたすか





ボタンでtype = "button"を忘れた堎合、フォヌムを送信するず、このボタンはonClickを呌び出したす。

短いコヌド codesandbox.io/s/y2ql953m9j



CSSSR Shorts20reduxFormのネストされたデヌタ構造





FormSectionを䜿甚しお、任意の深さのネストされたデヌタ構造を指定する

短いコヌド codesandbox.io/s/8x02q1jro8



CSSSR Shorts No. 21フォヌムからフィヌルド倀を倉曎する方法





フォヌムの倉曎機胜を䜿甚しお、ネストを䜿甚しおフィヌルド倀を蚭定する

短いコヌド codesandbox.io/s/8x02q1jro8



CSSSR Shorts No. 22単䞀の関数で耇数のフィヌルドを倉曎する





倉曎機胜を䜿甚しおredux-formで耇数のフィヌルドを䞀床に倉曎する

短いコヌド codesandbox.io/s/7wxkvww01j



CSSSR Shorts23reduxFormにinitialValuesのストレヌゞをリッスンさせる





enableReinitializeプロパティreduxFormは、ストアでデヌタが倉曎されたずきにフォヌムにinitialValuesを匷制的に曎新させたす

短いコヌド codesandbox.io/s/7wxkvww01j



ご枅聎ありがずうございたした。 最初の4぀のクリップでマむクをscるな



React shorts、そしおAngular 2+が毎週今週䞭に公開されたす。 youtubeチャンネルを賌読したす。 そこでの倏のカンファレンスのビデオを芋おください。 私たちのために働きに来おください。



All Articles