[Assignment 1回顧録]ホワイトマインド-無限スクロールリスト
8067 ワード
钳机能实装コード
🔗 Github
🔗 链接的配置
🔗 信息会议唱片的发送
課題完了後の回顧内容
🔰 メンテナンスのために定数管理をしっかりと行います!
Infinity scroll
機能では、定数とは何かを考慮する必要があります.API_URL
|当然定数で管理すべきと考えられるが、他のlimit, page
|のような変数は考えられなかった.コードとメンテナンスのシンプル化に最善を尽くします.export const BASE_URL = `https://jsonplaceholder.typicode.com`;
export const ERROR_MESSAGE = 'Failed to fetch data';
export const LIMIT = 10;
export const DEFAULT_PAGE = 1;
🔰 DeboringとThrottleを適用!
イベントハンドラが大量の演算(イベントハンドラの回数が多すぎる)を実行する場合、イベント発生を制御可能なレベルに制限する技術.
Debounce
最後の(または最初の)関数のみを呼び出す技術.Throttle
イベントを特定のサイクルで発生させるテクノロジーe最後の関数が呼び出されてからしばらくの間、再度呼び出されないことを確認する
Debounce
およびThrottle
が適用されるのは当然である.lodash
をインストールして適用することに慣れているかもしれませんが、コードで直接実装するには、数行のコードだけでいいです.おなじみのものを忘れてしまった気が…!🙄 //* decounce 함수
export const debounce = (func, delay) => {
let timeoutId = null;
// do something
return (...arg) => {
clearTimeout(timeoutId);
timeoutId = setTimeout(func.bind(null, ...arg), delay);
};
};
//* throttle 함수
export const throttle = (func, delay) => {
let timeout = null;
return function (...args) {
if (!timeout) {
timeout = setTimeout(() => {
func.call(this, ...args);
timeout = null;
}, delay);
}
};
};
Throttle
およびDebounce
使用例🔰 Intersection Observerとして開発されたら考えるべき事項!
eこの場合は|ʢ4|を用いて解決すべきである.IEユーザーは想像以上に多かった.
➡ >ラベル・ログを作成してマルチセグメント・フィルを適用します(Cross Browsingの下部)<
🔰 GITについての理解
私は初めて「リアルタイムshare」機能を使いましたが、チームメンバーのどの部分がすぐに分かるので不思議で面白いです.
ϷVS codeでは、次のメッセージとともにコミットされると、コラボレーションコミットとしてスタックされます.
'Co-authored-by: Daeun <[email protected]>'
Git Issue
新たな追加可能なもの、改善が必要なもの、エラーなどは、ホットスポットと見なすことができます!
すべてのアクティビティ履歴にホットスポットを登録し、そのホットスポットに従って操作します.
Commit Convention
これは|それとも...よくわからないときは
polyfill
ですか?いろいろ考えました.😨私が探したトス/バミン/カカギットの会議をよく見て勉強します.
👀 残念と解決策
Reference
この問題について([Assignment 1回顧録]ホワイトマインド-無限スクロールリスト), 我々は、より多くの情報をここで見つけました https://velog.io/@daeun-react/Assignment-1-회고록テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol