Hỏi về immutability trong reactjs
các a/c cho e hỏi cái này với ạ, e mới học reactjs, đến đoạn cập nhật state thì có mấy cái e k hiểu , là nếu lúc cập nhật state thì nên dùng deepclone hay shallow clone ạ ? e đọc một số bài viết thấy bảo là nên giữ tính bất biến của dữ liệu, nhưng khi họ code lại thấy dùng Object.assign
@@ e thấy cái Object.assign
là shallow clone mà, muốn làm cho nó bất biến thì phải dùng deepclone chứ đúng k ạ ? còn có bài ở đây nói là để thay đổi giá trị của object mà vẫn đảm bảo tính chất bất biến, chúng ta cần sử dụng Object.assign(target, ...sources)
@@ sao họ k dùng JSON.parse(JSON.stringify(this.state))
nhỉ ? :3 e đọc về cái JSON.parse(JSON.stringify())
thì thấy bảo là nên cẩn thận với những dữ liệu không thể JSON.parse()... :3 là những dữ liệu nào vậy ạ ?
câu hỏi của e hình như hơi loằng ngoằng :3 a/c nào có đọc được thì chỉ bảo e với ạ, em cảm ơn
Shallow clone cũng được nhé bạn, state thì immutable (không bị ảnh hưởng).