How do you define an action in the reducer function?

4 phương ánCó giải thích

Các phương án trả lời

Chọn một phương án
Lời giảiChọn phương án để mở

Đáp án đúng: "case 'increment':

Lời giải
return {
  count: state.count + 1
}

;". Reducer là hàm thuần nhận state hiện tại cùng action và trả về state mới; trong khối switch theo action.type, mỗi case trả về một đối tượng mới chứ không sửa state cũ, nên với state dạng đối tượng có khóa count, cách viết đúng là tạo đối tượng có thuộc tính count bằng state.count cộng 1. Phương án "case 'increment':

Lời giải
return {
  count + 1
}

;" có ngoặc nhọn nhưng thiếu tên khóa, count + 1 không phải cặp khóa và giá trị nên là lỗi cú pháp, đồng thời count chưa được khai báo trong reducer. Phương án "case 'increment':

Lời giải
return {
  count= count + 1
}

;" dùng dấu bằng trong đối tượng, sai cú pháp vì cặp khóa và giá trị phải dùng dấu hai chấm, và ý đồ là gán thay vì trả về giá trị mới. Phương án "case 'increment':

Lời giải
return {
  state.count + 1
}

;" cũng thiếu tên khóa, biểu thức state.count + 1 không thể đứng một mình trong đối tượng nên lỗi cú pháp.

Cùng phần 6

Xuất hiện trong 1 bộ đề