Saya mengalami masalah dengan ngrx. Saya memiliki array di negara bagian saya yang ingin saya tambahkan objek. Ini sebenarnya berfungsi dengan baik jika saya konsol.log mereka, saya dapat melihat nilai-nilai itu di toko saya. Tetapi alat pengembang redux dan konsol memunculkan kesalahan TypeError: Tidak dapat membekukan tampilan buffer array dengan elemen.
Saya memiliki keadaan yang terlihat seperti ini:
const state: State = {
array: []
};
Objek yang saya berikan ke tindakan saya terlihat mirip dengan ini:
const obj = {attr: number, data: ImageData};
Dimana ImageData berasal dari Canvas dan diekstrak dengan canvas.getContext("2d").getImageData(...);
. Perlu dicatat bahwa Objek ini sangat besar dengan lebih dari 69000 kunci dengan nilai dari 0 hingga 255 (RGBA).
Dan saya menambahkan Objek baru ke negara bagian/toko seperti ini:
createReducer(
initialState,
on(action, (state: State, action)=> {
return {
...state,
array: [...state.array, action.payload]
}
})
);
Selanjutnya saya membaca bahwa saya harus menyalin objek secara mendalam sebelum meneruskannya ke tindakan jadi saya melakukannya dengan lodashs copyDeep()
, tetapi saya mendapatkan hasil yang sama.
Bantuan apa pun dihargai.