Hay quá a zai. Đúng cái e vừa làm mấy ngày trc mà k hiểu sao truyền function vào children component có sử dụng react memo nhưng vẫn bị re render. Ghét quá e truyền luôn nhữg biến cần thiết vào children component để tính toán luôn. Giờ mới hiểu rõ hơn về usecallback. Cám ơn a. Hi vọng a ra những bài biết đào sâu nâng cao hơn về react
@lengocanh nếu v thì thằng BadAttributeValueExpException phải được implements Serializable. Mà BadAttributeValueExpException extends Exception, Exception extends Throwable, Throwable implements Serizalizable thì vẫn được đúng k ạ
Cảm ơn bạn về bài viết, mình mới dùng authentication nên còn nhiều bỡ ngỡ. Một project nên chỉ có dạng authentication hay đa dạng ?. Vì mình set JWT cho project example của mình, nhưng không hiểu sao vẫn dùng được basic authenitcation !
Mình cho rằng: bạn nên thêm phần cuối cùng các câu lệnh để thể hiện rằng các tasks đã được đăng ký với Celery chạy. Nếu để thế này đọc xong vẫn chưa hiểu được. Ví dụ theo video này https://www.youtube.com/watch?v=fBfzE0yk97k
Cho e hỏi là đoạn cuối mình dùng login(payload) để gửi instance của BadAttributeValueExpException class tới server thì làm sao bên server trigger readObject() được ạ ? Hay rmi dùng cơ chế serialize và deserialize để gửi/nhận data hả a?
Đoạn closure mình có góp ý thế này
"nhờ vào numberFunc tham chiếu đến checkNumber() nên duy trì được biến num tồn tại" khi nói vầy thì cần nói tham chiếu vào lúc nào.
var numberFunc = numberGenerator(); // đây chính là lúc numberFunc tham chiếu đến checkNumber()
Phạm vi numberFunc = phạm vi của checkNumber(), phạm vi này được lưu lại cho numberFunc (gọi tắt là phạm vi A).
khi gọi console.log(numberFunc()); lần 1 lúc này phạm vi nó sẽ sử dụng là phạm vi A,
khi gọi console.log(numberFunc()); lần 2 thì nó sẽ vẫn nhảy vào đúng phạm vi A mà thôi, ko tạo ra phạm vi mới, mà trong phạm vi A biến num đã bị thay đổi ở lần 1, nên nó sẽ lấy giá trị mới nhất của num
==
"Một hàm tạo ra thì nó có thể ghi nhớ nơi nó được tạo ra và truy cập biến bên ngoài của nó"
còn về numberGenerator()() thì nơi nó được tạo chính là lúc gọi nó, còn numberFunc() thì nơi nó được tạo là bên trong numberGenerator()
Mình trình bày trên quan sát của mình, ko phải là chính xác đúng
các bạn ko hiểu có thể xem video này của bạn Sơn, bạn này giải thích còn dễ hiểu hơn mình nữa.
thttps://www.youtube.com/watch?v=xtQtGKL0NCI
THẢO LUẬN
recommend bài viết vì rất sát với thực tế.
Hay quá a zai. Đúng cái e vừa làm mấy ngày trc mà k hiểu sao truyền function vào children component có sử dụng react memo nhưng vẫn bị re render. Ghét quá e truyền luôn nhữg biến cần thiết vào children component để tính toán luôn. Giờ mới hiểu rõ hơn về usecallback. Cám ơn a. Hi vọng a ra những bài biết đào sâu nâng cao hơn về react
@lengocanh nếu v thì thằng BadAttributeValueExpException phải được implements Serializable. Mà BadAttributeValueExpException extends Exception, Exception extends Throwable, Throwable implements Serizalizable thì vẫn được đúng k ạ
Cảm ơn bạn về bài viết, mình mới dùng authentication nên còn nhiều bỡ ngỡ. Một project nên chỉ có dạng authentication hay đa dạng ?. Vì mình set JWT cho project example của mình, nhưng không hiểu sao vẫn dùng được basic authenitcation !
Hay quá bạn. Cảm ơn bạn nhé
em tạo PV với PVC chưa á?
thanks
Mình cho rằng: bạn nên thêm phần cuối cùng các câu lệnh để thể hiện rằng các tasks đã được đăng ký với Celery chạy. Nếu để thế này đọc xong vẫn chưa hiểu được. Ví dụ theo video này https://www.youtube.com/watch?v=fBfzE0yk97k
Bài viết nó chán vcc, viết lung tung từ component này qua component khác khó hiểu vl
chính xác rồi bạn nhé!
Bạn có thể đọc thêm về RMI tại đây : https://xz.aliyun.com/t/11339
Cho e hỏi là đoạn cuối mình dùng login(payload) để gửi instance của BadAttributeValueExpException class tới server thì làm sao bên server trigger readObject() được ạ ? Hay rmi dùng cơ chế serialize và deserialize để gửi/nhận data hả a?
Đoạn closure mình có góp ý thế này "nhờ vào numberFunc tham chiếu đến checkNumber() nên duy trì được biến num tồn tại" khi nói vầy thì cần nói tham chiếu vào lúc nào.
var numberFunc = numberGenerator(); // đây chính là lúc numberFunc tham chiếu đến checkNumber()
Phạm vi numberFunc = phạm vi của checkNumber(), phạm vi này được lưu lại cho numberFunc (gọi tắt là phạm vi A).
khi gọi console.log(numberFunc()); lần 1 lúc này phạm vi nó sẽ sử dụng là phạm vi A,
khi gọi console.log(numberFunc()); lần 2 thì nó sẽ vẫn nhảy vào đúng phạm vi A mà thôi, ko tạo ra phạm vi mới, mà trong phạm vi A biến num đã bị thay đổi ở lần 1, nên nó sẽ lấy giá trị mới nhất của num
==
"Một hàm tạo ra thì nó có thể ghi nhớ nơi nó được tạo ra và truy cập biến bên ngoài của nó" còn về numberGenerator()() thì nơi nó được tạo chính là lúc gọi nó, còn numberFunc() thì nơi nó được tạo là bên trong numberGenerator() Mình trình bày trên quan sát của mình, ko phải là chính xác đúng
các bạn ko hiểu có thể xem video này của bạn Sơn, bạn này giải thích còn dễ hiểu hơn mình nữa. thttps://www.youtube.com/watch?v=xtQtGKL0NCI
em k hiểu em k hiểu
Tặng sư phụ 1 like. 😁😁
luksa/kubia-petmấy cái image này nó sẽ có sẵn trên docker hub nha bạn, mình không có chứa nó ở máy localQuá hay
@phanhoang mà sao mình chạy code bên ngoài thì chạy đc nhỉ o jupyter nó khác hả
Có cách nào merge các audio mp3 và convert adio dạng base64 sang mp3 trong package này không bác.