ฉันประสบปัญหากับ ngrx ฉันมีอาร์เรย์ในสถานะของฉันซึ่งฉันต้องการต่อท้ายวัตถุ สิ่งนี้ใช้งานได้ดีจริง ๆ ถ้าฉัน console.log พวกเขาสามารถเห็นค่านั้นในร้านค้าของฉัน แต่เครื่องมือ dev redux และคอนโซลทำให้เกิดข้อผิดพลาด TypeError: ไม่สามารถตรึงมุมมองบัฟเฟอร์อาร์เรย์ด้วยองค์ประกอบได้
ฉันมีสถานะที่มีลักษณะเช่นนี้:
const state: State = {
array: []
};
วัตถุที่ฉันส่งไปยังการกระทำของฉันมีลักษณะคล้ายกับสิ่งนี้:
const obj = {attr: number, data: ImageData};
โดยที่ ImageData มาจาก Canvas และแยกด้วย canvas.getContext("2d").getImageData(...);
ควรสังเกตว่าออบเจ็กต์นี้มีขนาดใหญ่โดยมีคีย์มากกว่า 69,000 คีย์ที่มีค่าตั้งแต่ 0 ถึง 255(RGBA)
และฉันผนวก Object ใหม่เข้ากับสถานะ / ร้านค้าดังนี้:
createReducer(
initialState,
on(action, (state: State, action)=> {
return {
...state,
array: [...state.array, action.payload]
}
})
);
นอกจากนี้ ฉันอ่านเจอว่าฉันควร deepCopy Objects ก่อนที่จะส่งต่อไปยังการดำเนินการ ดังนั้นฉันจึงทำเช่นนั้นกับ lodashs copyDeep()
แต่ฉันได้ผลลัพธ์เดียวกัน
ความช่วยเหลือใด ๆ ที่ชื่นชม