So sánh useMemo và useCallback khác nhau gì?

Поделиться
HTML-код
  • Опубликовано: 9 фев 2025
  • Khi làm việc với React Hooks nhiều bạn hay nhầm lẫn khái niệm giữa useCallback và useMemo. Đừng lo lắng vì không chỉ riêng bạn mà có rất nhiều lập trình viên trong đó có mình đã phỉa mất nhiều thời gian để hiểu rõ sự khác biệt giữa chúng. Và bây giờ chúng ta sẽ cùng nhau tìm hiểu chi tiết nhé
    📚 Kiến thức trong video
    Giới thiệu kĩ thuật Memorization trong khoa học máy tính
    useCallback là gì? Khi nào nên sử dụng
    useMemo là gì? Khi nào nên sử dụng
    Cách sử dụng React.memo
    Điểm giống và khác nhau giữa useCallback và useMemo
    🔗 Link tham khảo 🔗
    Học useCallback: • Học useCallback - Reac...
    Học useMemo: • Học useMemo - React Ho...
    React Hooks Series: • Học useState - React H...
    📢 Liên hệ với mình tại 📢
    Facebook: / holetex
    Tiktok: / holetex
    Github: github.com/hol...
    Facebook cá nhân: / minhtung09
    Email: holetex@outlook.com
    Website: holetex.com
    🤝 Tham gia làm hội viên của kênh này để được hưởng đặc quyền:
    www.youtube.co...
    #holetex #reacthooks ##reactjs #react

Комментарии • 35

  • @devquen7688
    @devquen7688 Год назад +2

    công nhận càng ngày khả năng sư phạm của anh Tùng càng dễ hiểu. Từ việc tìm kiếm vd trực quan (fibonnaci) để tạo ra 1 nỗi đau thực tế, từ đó ng xem sẽ dễ nhận thấy lợi ích của nó hơn là việc chỉ nói lí thuyết 1 cách mơ hồ.
    Hi vọng tương lai anh ra khóa React (các kiến thức nâng cao) bên Udemy, nhất định em sẽ pre-order trước ^^

  • @feaz1553
    @feaz1553 Год назад

    dài hơn 20p nhưng không hề cảm thấy lãng phí 1 phút giây nào, tuyệt vời anh ơi!

  • @nguyenxuanbach2672
    @nguyenxuanbach2672 Год назад +2

    A làm hẳn 1 series bài bản từ A-Z về react đi ạ, với lại những kiến thức thực tế khi làm việc với react ạ

  • @cookieman.19
    @cookieman.19 Год назад

    Cảm ơn anh Tùng, xem xong clip + đọc docs em đã nhớ luôn chứ không còn mơ hồ. Tiện thể mở project cũ upgrade bằng những kỹ thuật này luôn 💙

  • @voxuanhoa1166
    @voxuanhoa1166 Год назад

    mỗi video đều chất lượng quá, cảm ơn anh nhiều.

  • @peterdo4652
    @peterdo4652 Год назад

    Video hay, dễ hiểu. Cảm ơn nhé

  • @ndthinh91
    @ndthinh91 Год назад

    Hay quá. Thích quá. Dễ hiểu quá!

  • @nghiabasil
    @nghiabasil Год назад +1

    studio đẹp qá a ơi

  • @HuyLêngọc-n8e
    @HuyLêngọc-n8e 11 месяцев назад

    Cám ơn anh, siêu hữu ích ạ

  • @hoanglongnguyenhuu2916
    @hoanglongnguyenhuu2916 Год назад

    A chỉnh ánh sáng để background tối tối hơn 1 chút là đẹp đó a. Vừa làm đèn phía sau nổi lên, vừa tập trung ánh sáng vào a hơn á. Với cái tủ phía sau nhìn như đang bị nghiêng, a chỉnh camera để cạnh tủ thẳng đứng là chuyên nghiệp vip pro luôn

    • @holetex
      @holetex  Год назад +1

      Cảm ơn góp ý của em nhiều nhé ❤️

  • @nghiatv3901
    @nghiatv3901 Год назад

    Hi vọng anh ra một vài video về react + typescript ạ

  • @lcd11001
    @lcd11001 Год назад

    cái form bạn nên dùng để render kết quả result Fibonaci luôn thì demo tối ưu hơn

  • @xanhbongcai7287
    @xanhbongcai7287 Год назад

    quá hữu ích

  • @kien278
    @kien278 Год назад

    tuyệt vời admin ơi, nếu useMemo dùng thay thế cho useCallback đc thì dùng 1 cái thôi cho đỡ phức tạp và phải nhớ nhiều nhỉ :D

    • @SonNguyen-vh5wl
      @SonNguyen-vh5wl Год назад +1

      không phải tự dưng lại React lại đẻ ra useMemo và useCallback đâu bạn, admin có thể nói đúng ở khía cạnh 2 hooks đó thay thế nhau trong 1 vài trường hợp nhưng 2 hook này không thể thay thế hoàn toàn cho nhau, bạn nên tìm hiểu kĩ để dùng cả 2 cho hiệu quả thì tốt hơn.

    • @holetex
      @holetex  Год назад

      Cái này tuỳ sở thích bạn nhé. Nhưng nên làm theo hướng dẫn sử dụng, useMemo để cache giá trị còn useCallback để cache callback. Người nào mới project đọc code dũng dễ hiểu hơn nữa

  • @ucmanho1237
    @ucmanho1237 Год назад

    dễ hiểu quá a ạ ^-^

  • @huanninhxuan2868
    @huanninhxuan2868 Год назад

    Anh giải thích rất dễ hiểu. Cảm ơn anh nhiều nhiều. Khi thực hành thì em có 2 câu hỏi không giải thích được. Mong anh giải thích giúp với ạ
    1. Tại sao không sử dung React.meno() tại tất cả các component.
    2. Em viết các hàm tính toán mất thời gian ra ngoài phạm vi component thì có sao không.

    • @kakashi3966
      @kakashi3966 Год назад

      1. Nếu không sử lý các expensive function thì không nên dùng nha bạn tại vì sẽ làm tốn tài nguyên
      2. không sao hết nha

  • @kysuhailua
    @kysuhailua Год назад

    Tóm tắt:
    - useCALLBACK: Ghi nhớ 1 fuction ko thực thi nó, fuction này được truyền làm tham số cho component con
    - useMEMO: Ghi nhớ trả về kết quả của 1 fuction

  • @nguyenvanthang7277
    @nguyenvanthang7277 Год назад

    A dùng extension gì mà gợi ý hay thế a

  •  Год назад

    Phút thứ 18:17 anh có nói là khi render lại thì nó sẽ tạo ra một vùng nhớ mới. Nếu xét trường hợp:
    const dispatch = useDispatch();
    khi em dùng useEffect bị yêu cầu truyền nó vào mảng dependency:
    useEffect( callback có dùng dispatch, [ dispatch] ).
    nếu mỗi lần render là tạo ra vùng nhớ mới, và "dispatch" cũng là kiểu tham chiếu nên lần render sau sẽ khác lần render trước thì sao callback trong useEffect chỉ chạy đúng 1 lần vậy anh.

    • @holetex
      @holetex  Год назад

      Nếu em mở code của useDispatch lên thì em sẽ thấy nó cũng áp dụng các kĩ thuật cache để chỉ tham chiếu tới 1 vùng nhớ duy nhất em nhé.

  • @codecungnhien5840
    @codecungnhien5840 Год назад

    những callback càng về cuối càng khó anh em ạ. Mình phải xem đi xem lại cả chục lần ở lần đầu học hooks, xong còn bị quên nữa chớ

  • @namtruongnguyenbui861
    @namtruongnguyenbui861 Год назад

    Trong video, anh sử dụng extension nào mà có nhiều cái snippet hay vậy?

  • @linhphan9850
    @linhphan9850 Год назад +3

    Cái này đi phỏng vấn là hỏi hoài, ng ta hay hỏi UseMemo và UseCallBack khác gì nhau, với lại đi làm sẽ liên tục dùng nó.

    • @MinhDucOfficial
      @MinhDucOfficial 7 месяцев назад

      còn hỏi thêm gì nữa không bạn

    • @BinhNguyen-sy9if
      @BinhNguyen-sy9if 6 месяцев назад

      @@MinhDucOfficialphân biệt 3 trường hợp depend của useEffect sẽ hoạt động như nào 😂

  • @quanminh8441
    @quanminh8441 Год назад

    woww tuyệt

  • @anhtuanle4991
    @anhtuanle4991 Год назад +1

    Trong thực tế thì có sử dụng hook này nhiều không anh ?

    • @holetex
      @holetex  Год назад +1

      Trong thực tế xài nhiều em nhé. Nhưng như anh nói 2 hooks này để tối ưu hiệu năng nên khi project phải lớn đến 1 mức nhất định và cần tối ưu về performance thì mới cần áp dụng nhiều

  • @TranQuocatPH
    @TranQuocatPH Год назад

    Anh ơi anh Sơn Đặng có nói là mình chỉ dùng useCallback khi React.memo không giải quyết được vấn đề là không render lại componnet con đúng không anh . còn nếu trong component cha mà không có component con thì mình không cần dùng vì nó cũng thừa thãi đúng không anh . mong anh giải đáp thắc măc ạ

    • @tuankietngo650
      @tuankietngo650 Год назад

      Đr componet không có quan hệ vs nhau thì dùng làm gì