thắc mắc Tại sao ReactJS lại hot đến vậy ạ?

  • Người tạo chủ đề Người tạo chủ đề Celsius
  • Ngày bắt đầu Ngày bắt đầu
Hình như hơi lạc đề rồi mấy bác ơi. Đag nói reactjs mà giờ lướt thấy t:cautious::cautious:oàn java, nodejs ko

Sent from Xiaomi 2201117TG using vozFApp
 
Ngôn ngữ nào chẳng có ưu nhược điểm, so sánh cái ưu nhược điểm đó với resource sẵn có mà lựa chọn cho phù hợp thôi.
Nodejs thì dĩ nhiên thua Java về perf, cú pháp dĩ nhiên không chuẩn chỉ bằng. Nhưng perf của nó cũng chẳng phải là quá kém, tốt nhất trong mấy thằng thông dịch rồi. Cú pháp thì xài TS bớt được kha khá vấn đề.
Các team lớn cũng không phải không xài Nodejs. Nói gần thì Baemin không phải big tech nhưng cũng chẳng phải bé và nó vẫn xài Nodejs rất nhiều đó thôi. Các anh tài chê Nodejs trash chắc gì pass được interview của nó chứ chưa nói tới build được hệ thống như vậy.
Xưa build monolith thì còn suy nghĩ chứ giờ micro service, cloud functions. Nào ngon dễ thì quất thôi. Service nào cần optimize speed cao nhất thì xem xét chọn lang khác.

Mà thằng PM nào khơi mào vụ này cũng ngu, phần mềm chậm chưa hiểu lý do đòi nghe mấy thằng cuồng java thay ngôn ngữ cái rụp tính đập đi xây lại hay sao. Đúng là cty trả tiền để mấy anh này với architec bào tiền cty. Dev dốt thì cho nó xài ngôn ngữ siêu nhanh cũng chả làm dc cái gì. PM ngu tech quá cũng khổ vô mấy cty vậy ko có tương lai :go:
 
Sửa lần cuối:
theo các bác để học sâu về React thì cần tìm hiểu về những gì, cho e xin 1 số keyword ạ, tự nhiên ngồi code React 1 thời gian e bị mất định hướng với th React này
 
cái useEffect có bắt buộc phải liệt kê đầy đủ các biến trong dependency ko các fen? thấy official recommend là có nhưng như vậy thì dài quá
 
cái useEffect có bắt buộc phải liệt kê đầy đủ các biến trong dependency ko các fen? thấy official recommend là có nhưng như vậy thì dài quá
Biến nào muốn nó thay đổi để update UI thì thêm vào thôi, có 1 số TH phải ignore warning luôn hoặc thêm các dep là keywords bác
 
Ract.dev, mất định hướng thì cày lại một vòng trang chủ là okiela.
vẫn hơi hoang mang bác ạ, e đang thắc mắc fresher, junior, senior React khác nhau ở điểm gì :pudency:

cái useEffect có bắt buộc phải liệt kê đầy đủ các biến trong dependency ko các fen? thấy official recommend là có nhưng như vậy thì dài quá
k, cái dep theo e hiểu muốn chạy lại useEffect khi biến nào thay đổi thì nhét biến đấy vào
 
cái useEffect có bắt buộc phải liệt kê đầy đủ các biến trong dependency ko các fen? thấy official recommend là có nhưng như vậy thì dài quá
Có cài eslint react hook đi. Nói chung điền thiếu or chơi mấy trò tà dạo như Json.stringfy or disable eslint là code có vấn đề. 99% là phải điền đủ.

À Cài eslint autofix hay gì đó nó auto điền rồi mà. Cơ mà điền đủ rồi mà code bug thì phải xem lại tại sao lại bug. dependency thay đổi có đúng chưa, có cần useMemo, useCallback gì để memo value trước khi bỏ vào dependency array hay ko.
 
Sửa lần cuối:
Screen Shot 2023-04-07 at 17.34.38.png
 
Đây là cái ESLint autofix ngu nhất tôi từng thấy. Mấy bạn mới vào toàn abuse fix all thành ra bóp dé team mấy lần.
Fix này thay đổi behavior của code.
Ko hiểu lắm. Có thể project đã build lâu. or ko biết xài useeffect chính xác nên bóp dé. Còn ignore cái eslint hook là có vấn đề trong code vậy thôi.

Tôi toàn lười type dependcy auto fix thôi. Chưa thấy bug. Cùng lắm nó sai 1 chút như object không select đúng property thì sửa lại thôi (kiểu code trong đó chỉ xài abc.length nhưng nó quăng nguyên cái abc, abc mà ko dc memo thì khả năng cao chạy effect nhiều lần)
 
Túm váy auto fix ko làm code hết bug, Chỉ phục vụ việc lười gõ vào array và việc k biết phải điền cái gì vô array. Vấn đề là điền dep vào mà call effect quá nhiều lần (loop) or bóp dé gì đó thì có nghĩa là code chỗ đó có vấn đề. Phân biệt junior với senior thì senior phải hiểu rõ cái dependency array của useEffect.

Tôi hàng ngày vẫn auto fix đỡ type và điền đủ vào array.Chả bao giờ ignore dependcy. Ko bị effect loop hay bóp dé gì cả. Căn bản qua cái thời mà useEffect hành hạ dc tôi :shame:
 
Túm váy auto fix ko làm code hết bug, Chỉ phục vụ việc lười gõ vào array và việc k biết phải điền cái gì vô array. Vấn đề là điền dep vào mà call effect quá nhiều lần (loop) or bóp dé gì đó thì có nghĩa là code chỗ đó có vấn đề. Phân biệt junior với senior thì senior phải hiểu rõ cái dependency array của useEffect.

Tôi hàng ngày vẫn auto fix đỡ type và điền đủ vào array.Chả bao giờ ignore dependcy. Ko bị effect loop hay bóp dé gì cả. Căn bản qua cái thời mà useEffect hành hạ dc tôi :shame:
Gặp mấy đồng nghiệp như fence tôi dị ứng cực kì :look_down:
làm việc với React mà ko kiểm soát được callback của hook sẽ gọi lúc nào mà cứ auto fill full deps như thế thì cái app sẽ cực kì tệ.

via theNEXTvoz for iPhone
 
Gặp mấy đồng nghiệp như fence tôi dị ứng cực kì :look_down:
làm việc với React mà ko kiểm soát được callback của hook sẽ gọi lúc nào mà cứ auto fill full deps như thế thì cái app sẽ cực kì tệ.

via theNEXTvoz for iPhone
Thưa anh người ta làm ra cái rule eslint hook là có lý do nhé. Khi nào anh code mà eslint rule hook ko chửi thì quay lại đây.

Còn tôi fill đủ mà task ko bug, change state props mà effect run đúng. Ko loop or ko run khi ko cần thiết.

Có vẻ react dev trên đây chắc ko ai thèm cài eslint. Nói chứ cực dị dev nào ko cài eslint dac biệt rule of hook
 
Sửa lần cuối:
Thưa anh người ta làm ra cái rule eslint hook là có lý do nhé. Khi nào anh code mà eslint rule hook ko chửi thì quay lại đây.

Còn tôi fill đủ mà task ko bug, change state props mà effect run đúng. Ko loop or ko run khi ko cần thiết.

Có vẻ react dev trên đây chắc ko ai thèm cài eslint. Nói chứ cực dị dev nào ko cài eslint dac biệt rule of hook
xin bác bộ eslint config đơn giản dễ hiểu, cài nhiều rule giờ nó như nồi cháo :beat_brick:
 
xin bác bộ eslint config đơn giản dễ hiểu, cài nhiều rule giờ nó như nồi cháo :beat_brick:
Tùy cái xài cái gì nữa. Eslint mặc định có kha khá rule rồi. Nhưng vì code react thì phải thêm những cái dưới đây.
- eslint-plugin-react (must have)
- eslint-plugin-react-hooks (must have)
- eslint-plugin-next (nếu xài nextjs)

Typescript thì thêm eslint typescript.

Nói chung cái eslint-plugin-react-hooks quan trọng. Qua 2pic này tôi thấy react dev hổng kiến thức react hook useEffect kha khá. Người làm ra cái eslint hook ver 1 chính là là Dan Abramov trong team React. Nên ai nghĩ mình thông minh hơn core team react thì cứ việc ignore cái eslint này.

99% là phải fill đủ dep array. 1% là optimzie và phải rất rất hiểu mình đang làm cái gì đó. Thường 1 số hook của lib tôi đọc open src thấy cũng có người ignore dep array 1 chút nhưng đó là vì nguòi ta hiểu mình muốn làm gì và đó là cái case đặc biệt. Còn ai fill dủ mà bug thì xem lại code or tự nghĩ mình thuộc 1% rồi ignore.

Tùy team sẽ có thêm nhiều config khác nhau từ khó đến dễ nhưng thường project bt thì eslint mặc định + đống trên kia là đủ. Ai muốn hardcore có thể thử eslint rules của AirBnb.

À mà chắc tôi nghĩ mấy cái useMemo với useCallback ae dev react chắc cũng ko hiểu xài khi nào quá.

Mà tại react tiên phong chế ra cái củ nợ này. Như solidjs sau này thừa kế bỏ vụ dep array. Nhưng mà giữa việc control được tất cả và magic thì thôi tôi chọn manual control của react :shame:
 
Sửa lần cuối:

Thống kê chủ đề

Ngày tạo
Celsius,
Người trả lời cuối
JavaNeverDie002,
Trả lời
690
Lượt xem
97.276
Quay lại
Lên đầu trang