? ???? CRUD ??? ?? ?? ???? ??? ??? ?????. ??? ?????? ??? ?? ????? ?? ?? ??????? ???? ?????.
NestJS Boilerplate ???? ?? ???? ?? ??? ???? ??? ? ?? ??? ? ??? CLI? ???? ??? ? ?????. ? ??? ???? ?? ? ?? ???? ???? ??? ?? CRUD ??? ???? ??? ??? ??? ? ????. ??, ??? ???? ??? ??? BC Boilerplates ????? ??? ??? ???? ?? ???? ???? Extensive-React-Boilerplate? ???? ????(?????? ??? ???? ???? ? ? ??). ?? ????? ???? CRUD ??? ???????.
?? ? ??? ??? ?? React ?????? Next.js??? ??, SEO ? ??? ??? ????? ??? ?? ??? ??? ????? ??? ? ????. ??? ??? NextJS ????? ???? ???? ??? ?? ??? ????? ?? ? ??? Next.js?? API ??? ?? ??? ???? ???? ????.
????? CRUD? ??(Create), ??(Read), ????(Update), ??(Delete)? ?????. ? ??? ?? ???? ?? ??? ? ?? ?? ??? ?????. ???? ?? ?? ??? ?? ??? ??, ??, ??? ?? ??? ???? ?? ?? ???? ?? ???? CRUD ?? ??? ??? ?????. ???? ???? ??? ?? React ??? React ???? ??? ??, ??? ??, ?? ?? ?? ???? ?? Extensive-React-Boilerplate? ???? ????. ??? ? ???? ?? ??? ? ????. ?? ????? ??? ?? ??? ?? ???? ???????.
?? ??
?? ??: ???? ???? ? ???? ?????(?: ??? ??, ? ?? ??).
??: ???? ???? ????, ??? POST ??? ???, ??? ????, ?? ?? UI? ???????.
?? ???????. API? ?? POST ??? ? ??? ??? ???????. ?? ?? ????? usePostUserService ??? ? ??? ????? ? ?????. ?? ? ?? ??? ???? ? ???? ???? ?? ??? ??? ????? ???? ??? ? ??? ? ??? ?????. Extensive-React-Boilerplate ????? ? ??? ??? ? ??? ??? ? ? ????. ???? ? ??? ??? ?? ?? ???? ??? ?? ?????.
??? useFetch ??? ???? POST ??? ??? ??? ?? ?? usePostUserService? ???????. ??? ???? ???? ?? API? ????.
function usePostUserService() { const fetch = useFetch(); return useCallback( (data: UserPostRequest, requestConfig?: RequestConfigType) => { return fetch(`${API_URL}/v1/users`, { method: "POST", body: JSON.stringify(data), ...requestConfig, }).then(wrapperFetchJsonResponse<UserPostResponse>); }, [fetch] ); }
wrapperFetchJsonResponse ??? ? ??? ????? "?? ??"? ?? ???????.
?? ??
?? ??: ??? ?? ?? ?? ???? ???? ?????(?: ??? ??? ? ?? ?? ????).
??: GET ??? ?? ???? ????, ?? ? ?? ??? ????, UI?? ???? ??????.
? ??? ???? ?? ???? ??? ???? ???? ?? API? GET ??? ?? ??? ?????. ??(UsersRequest)? ?? ??(UsersResponse)? ??? ? ??? ???, ??? ???? ?? ???? ???? ID?? ?? ???? ????? ???? ??? ??? ? ????.
??? ?? useGetUsersService ???? ?? ???? ?????? ?? ??? ??, ?? ? ??? ?? ?? ????? ?? GET ??? ????.
function useGetUsersService() { const fetch = useFetch(); return useCallback( (data: UsersRequest, requestConfig?: RequestConfigType) => { const requestUrl = new URL(`${API_URL}/v1/users`); requestUrl.searchParams.append("page", data.page.toString()); requestUrl.searchParams.append("limit", data.limit.toString()); if (data.filters) { requestUrl.searchParams.append("filters", JSON.stringify(data.filters)); } if (data.sort) { requestUrl.searchParams.append("sort", JSON.stringify(data.sort)); } return fetch(requestUrl, { method: "GET", ...requestConfig, }).then(wrapperFetchJsonResponse<UsersResponse>); }, [fetch] ); }
?? ???? ???? ?? useGetUserService ??? GET ??? ?? ID?? ???? ?????.
function useGetUserService() { const fetch = useFetch(); return useCallback( (data: UserRequest, requestConfig?: RequestConfigType) => { return fetch(`${API_URL}/v1/users/${data.id}`, { method: "GET", ...requestConfig, }).then(wrapperFetchJsonResponse<UserResponse>); }, [fetch] ); }
???? ??
?? ??: ?? ??? ??(?: ??? ?? ????, ??? ??? ??)
??: ????? ???? ????, ??? PUT ?? PATCH ??? ???, ??? ????, UI? ???????.
????? ??? ???? API? PATCH ??? ??? ?? ??? ????? ??? ?????. ?? ?? ??? ?? usePatchUserService ???? ?? UserPatchRequest ? ?? ?? UserPatchResponse:
? ??? ? ??? ID? ????? ???? ??? PATCH ??? ????.
function usePatchUserService() { const fetch = useFetch(); return useCallback( (data: UserPatchRequest, requestConfig?: RequestConfigType) => { return fetch(`${API_URL}/v1/users/${data.id}`, { method: "PATCH", body: JSON.stringify(data.data), ...requestConfig, }).then(wrapperFetchJsonResponse<UserPatchResponse>); }, [fetch] ); }
??: ?? ??? ?????? PUT ?? PATCH? ???? ?? ? ??? ??, PUT? ????? ?? ??? ????? ?????.
?? ??
?? ??: ??? ??(?: ??? ?? ?? ???? ?? ??)
??: ??? DELETE ??? ???, ??? ????, ??? ????? UI? ???????.
?? ??? ??? ???? ??? ID? ?? API? DELETE ??? ??? ??? ?????. useDeleteUsersService ??? ??(UsersDeleteRequest)? ?? ??(UsersDeleteResponse)? ??? ? ID?? ???? ???? ?? DELETE ??? ?????.
function usePostUserService() { const fetch = useFetch(); return useCallback( (data: UserPostRequest, requestConfig?: RequestConfigType) => { return fetch(`${API_URL}/v1/users`, { method: "POST", body: JSON.stringify(data), ...requestConfig, }).then(wrapperFetchJsonResponse<UserPostResponse>); }, [fetch] ); }
??? ??? HTTP ?? ?? ? ?? ??? ???? ??????. ??? ?? ??? ???? ??? ???? ??? ????? ?? ?? ???? ??? ????? ???? ?? ?? ??? ?????? ?????.
Next.js?? ??? ??
?, ??? CRUD ??? ???? ?? ???? Next.js? ???? ???? ?? ??? ??? ???????. Next.js? ??????? React? ??? ???? ???? ?????. Next.js? CSR(????? ? ???)? ?? SSR(?? ? ???), SSG(?? ??? ??), ?? API ?? ? ????? ???? ?????. ?? Next.js? React?? ???? ??? ?? ???? ???? ?? ??? ?????.
React ?? ??? ????????? ?? ??? ?? ? ??????? ??? ????? ?????. ???? ??? ??? ???? ???? ?? ?? ???? ??SSR? ???? ?? ? ?????. ? ?? ?? ? ???? ???? ?????.
???? ?? ???? ?? ?? ???? ??? SSG? ?? ?? ??? ???? ?????. ??? getStaticProps ????
?? ? ???? ???? ? ??? ???(SSG). ?? ??? ?? ? ??? ???? ???? ???? ?? ????? ?? ?? getStaticPaths ???? ???? ?? ??? ? ????. ?? ? ?? ??? ???? ?? getStaticProps? ?? ?????. Next 14??? ??? ??? ?? ?? ???? ?? ??? ? ?? ?? "React ??"? ????? ?? ???? ???.
? ??? ?? ??? ???? ?? Next.js? ??? ??? ???? ??? ?? ???? ??? ???? ?? ???? ??? ???? ?? ??? ??? ? ????.
Method | Data Fetching | Timing | Use Case |
---|---|---|---|
getStaticPaths | Static Site Generation (SSG) | At build time | Pre-render pages for dynamic routes based on data available at build time. |
getStaticProps | Static Site Generation (SSG) | At build time | Pre-render pages with static content at build time. Ideal for content that doesn't change frequently. |
getServerSideProps | Server-Side Rendering (SSR) | On each request | Fetch data on the server for each request, providing up-to-date content. Ideal for dynamic content that changes frequently. |
useQuery | Client-Side Rendering (CSR) | After the initial page load | Fetch initial data server-side, hydrate, reduce redundant network requests, Background Refetching. |
useSWR | Client-Side Rendering (CSR) | After the initial page load | Fetch and revalidate data on the client-side, suitable for frequently changing data. |
Next.js? ?? React ?? ??
React ??? ?? ?? ????, ??, ??? ? ????? ?? ??? ????? React ? Next.js ?????? ???? ???? ???? ?? ??? ?????. ??? ?? ??? ??? ????.
- ???? ??? ????: ?? ? ????? ??? ???? ???? ?? ???? ??? ????.
- ?? ?? ????: ???? ???? ??????? ???? ?? ????? UI? ?? ?? ??? ?????.
- ?? ?? ??: ?? ?? ? ??? ?? ??? ???? ?? ???? ?? ? ?? ??? ? ?? ??? ? ????.
- ??? ????: useMutation ??? ?? ??? ??? ?? ??? UI ?? ??? ?? ??? ?? ??? ? ?? ?? ??? ???? ??? ????? ?????.
- Next.js?? ?? ???: getStaticProps ?? getServerSideProps(??? ??)? ?? ?? Next.js ??? ???? ???? ???? ??? ? ????.
- ?? ? ?? ??: ReactQueryDevtools ??? ?? ?? ?? ? ??? ??, ???, ?? ? ?? ?? ??? ? ? ?? ???? ???? ??????? ??? ? ?? ?? ????? ????? ??? ? ????. .
??????? ???
QueryClientProvider? React ?? ?? ??? QueryClient ????? ???? ???? ??? ?? ?????. ? ????? useQuery? ?? ??? ???? ? ?????. ?? ????? ?? ?? ??? ??? ???? ??? ??, ?? ?? ?? ?? ?? ? ??? ?? ?? ??? ???? ???. ?? ?? React Query ?????? ????? ?????? ???? ??? ? ??? ???.
function usePostUserService() { const fetch = useFetch(); return useCallback( (data: UserPostRequest, requestConfig?: RequestConfigType) => { return fetch(`${API_URL}/v1/users`, { method: "POST", body: JSON.stringify(data), ...requestConfig, }).then(wrapperFetchJsonResponse<UserPostResponse>); }, [fetch] ); }
???? ? ????? ???? ???? ??? ?? ??? ?????.
- ?? ??? ??? ?? ?? ??? ??.
- ?? React ??????? ?? ???? ??? ? ????.
- ??, ????? ?? ????, ?? ??? ?? ??? ??????.
React ?? ?? ??
React Query? ???? ? ?? ??? ??? React Query ??? ???? ????? ?? ?? ??? React Query Devtools???. ??????? ?? ???? ???? ??? ?? ?????? ?? ?? ?? ?? ??? ???? ? ????.
?? ?? React Query Devtools? ???? ?? ?? ? ??? ????, ?? ??? ?????? ??? ???? ?? ?? ??? ??????, ??? ??? ?? ??? ????? ??? ? ????.
??? ?? ? ?? ???
????? ??? ???? ??? ?? ??? ?? ???? ????? useInfiniteQuery? ?? ?????. ??, React Query?? ??? ???? ???? ?? ?? ?? ?????. ??? by ???? ?? ? ??? ??? ???? ??? ?? ?????.
function usePostUserService() { const fetch = useFetch(); return useCallback( (data: UserPostRequest, requestConfig?: RequestConfigType) => { return fetch(`${API_URL}/v1/users`, { method: "POST", body: JSON.stringify(data), ...requestConfig, }).then(wrapperFetchJsonResponse<UserPostResponse>); }, [fetch] ); }
?? ?? React Query? useInfiniteQuery ??? ???? ?? ?? ?? ???? ??? useGetUsersService ??? ?????.
function useGetUsersService() { const fetch = useFetch(); return useCallback( (data: UsersRequest, requestConfig?: RequestConfigType) => { const requestUrl = new URL(`${API_URL}/v1/users`); requestUrl.searchParams.append("page", data.page.toString()); requestUrl.searchParams.append("limit", data.limit.toString()); if (data.filters) { requestUrl.searchParams.append("filters", JSON.stringify(data.filters)); } if (data.sort) { requestUrl.searchParams.append("sort", JSON.stringify(data.sort)); } return fetch(requestUrl, { method: "GET", ...requestConfig, }).then(wrapperFetchJsonResponse<UsersResponse>); }, [fetch] ); }
??? QueryFn? ?? ???, ?? ? ?? ????? ???? ??? ???? ????, getNextPageParam ??? ??? ???? ??? ???? ??? ?? ???? ?????. ???? ?????? ?? ???? ???? useInfiniteQuery? nextPage ????? ???? ?? ??? ??? ???? ?????. ??? ?? ???? ???? ?????. ??? ?? ??? gcTime ????? ?? ?????.
????? React Query? React ??????? ?? ??? ???? ????? ?? ???? ???? ?????. QueryClientProvider? ?? ??? ??? ?? ?? ????? ??? ??? ???? ??, ReactQueryDevtools? ?? ?? ?? ??? ???? ???? ?? ??? ??? ?????.
?? ??
CRUD ??? ????? ??? ???? ?????? ???? ???? ?? ?? ??? ?? ??? ?????. ?? ??? ????? ????? ?? ?? ??, ?? ?? ??, ??? ???, ??? ?? ?? ?? ?? ??? ??? ??? ????. ?? ??? ?? Extensive-react-boilerplate? WrapperFetchJsonResponse ?? ??? ?????.
function useGetUserService() { const fetch = useFetch(); return useCallback( (data: UserRequest, requestConfig?: RequestConfigType) => { return fetch(`${API_URL}/v1/users/${data.id}`, { method: "GET", ...requestConfig, }).then(wrapperFetchJsonResponse<UserResponse>); }, [fetch] ); }
??
? ????? ???? CRUD ??? ??? NextJS? ??? ?? ??? ???????. ??? React Query? ???? ??? ???? ??? ?????, ??? ?? ??? ? ???? ?? QueryClientProvider ? ReactQueryDevtools? ??? ???? ??????. ?? ??? ??? ??? ???? ?? ??? ?? ? ?? ??? ??? ?? ???? ?? ??? ???? ??????? ???? ??? ??? ??? ??? ??????.
? ??? ??? ??? ??? ??? ?? NextJS ?????? CRUD ??? ??? ? ?? ??? ??? ???. ?? ????? Extensive-react-boilerplate ???? ??? ? ????. CLI? ???? ?? ? ? ?? ? ? ?? CRUD ??? ??? ? ?? ??? ???? ???? ???? Nestjs-boilerplate ???? ????. ??? ??? ???? ??? ???? ??? ??????. ???? ????, ?? ??? ?? ?? ??? ????, ????? ???? ? ???? ??? ???.
BC Boilerplates ?? ?? ??? ??? ? ?? ??? ???? ????. GitHub ???? ?? ??? ?? ???? ??? ?? ????.
? ??? ?? ??? Olena Vlasenko? Vlad Shchepotin??
? ??? NextJS? CRUD ?????? ?? ?????. ??? ??? PHP ??? ????? ?? ?? ??? ?????!

? AI ??

Undress AI Tool
??? ???? ??

Undresser.AI Undress
???? ?? ??? ??? ?? AI ?? ?

AI Clothes Remover
???? ?? ???? ??? AI ?????.

Clothoff.io
AI ? ???

Video Face Swap
??? ??? AI ?? ?? ??? ???? ?? ???? ??? ?? ????!

?? ??

??? ??

???++7.3.1
???? ?? ?? ?? ???

SublimeText3 ??? ??
??? ??, ???? ?? ????.

???? 13.0.1 ???
??? PHP ?? ?? ??

???? CS6
??? ? ?? ??

SublimeText3 Mac ??
? ??? ?? ?? ?????(SublimeText3)

??? ??











Java ? JavaScript? ?? ?? ????? ??? ?? ?? ?? ???? ????? ?????. Java? ??? ? ??? ?????? ??? ???? JavaScript? ?? ? ??? ??? ?????.

JavaScriptCommentsareEnsentialformaining, ?? ? ???? 1) Single-LinecommentsERUSEDFORQUICKEXPLANATIONS.2) Multi-linecommentSexplaincleClexLogicOrprovidedEdeDDocumentation.3) inlineecommentsClarifySpecificPartSofcode.bestPractic

JavaScript?? ??? ??? ?? ? ? ?? ??? ???????. 1. ?? ??? ??? ???? ?? ??? ????. ISO ?? ???? ???? ???? ???? ?? ????. 2. ?? ??? ?? ???? ??? ?? ???? ??? ? ??? ? ?? 0?? ????? ?? ??????. 3. ?? ?? ???? ???? ???? ?? ?????? ??? ? ????. 4. Luxon? ?? ???? ???? ?????? ???? ?? ????. ??? ?? ???? ????? ???? ??? ????? ?? ? ????.

TAGGSATTHEBOTTOMOFABLOGPOSTORWEBPAGESERVESPRACTICALPURSEO, USEREXPERIENCE, andDESIGN.1.ITHELPSWITHEOBYOWNSESPORENGENSTOESTOCESKESKERKESKERKERKERDER-RELEVANTTAGSWITHOUTHINGTEMAINCONTENT.2.ITIMPROVESEREXPERKEEPINGTOPONTEFOCUSOFOFOFOCUSOFOFOFOCUCUSONTHEATECLL

JavaScriptIspreferredforwebDevelopment, whithjavaisbetterforlarge-scalebackendsystemsandandandoidapps.1) javascriptexcelsincreatinginteractivewebexperiences withitsdynatureanddommanipulation.2) javaoffersstrongtypingandobject-Orientededededededededededededededededdec

javascriptassevenfundamentalDatatatypes : ??, ???, ??, unull, ??, ? symbol.1) ?? seAdouble-precisionformat, ??? forwidevaluerangesbutbecautiouswithfatingfointarithmetic.2) stringsareimmutable, useefficientconcatenationmethendsf

??? ?? ? ??? DOM?? ??? ??? ? ?????. ??? ?? ????? ?? ??????, ??? ?? ???? ?? ????????. 1. ??? ??? addeventListener? usecapture ?? ??? true? ???? ?????. 2. ??? ??? ?? ???? usecapture? ???? ????? ?????. 3. ??? ??? ??? ??? ???? ? ??? ? ????. 4. ??? ?? ?? ?? ??? ?? ??? ??????? ??? ???? ?????. 5. ??? ?? ?? ?? ??? ?? ???? ?? ???? ? ??? ? ????. ? ? ??? ???? ???? JavaScript? ??? ??? ??? ????? ???? ???? ??? ??????.

Java? JavaScript? ?? ????? ?????. 1. Java? ???? ???? ??? ? ??? ?????? ?????? ? ?? ???? ?????. 2. JavaScript? ?? ? ?? ?? ? ??? ?? ??? ???? ??? ? ?? ? ?? ?????.
