Estoy enviando el mismo objeto tanto a una matriz local como a una matriz importada en React, de la siguiente manera:
import { EVENTS_DRAFT } from "../../store/stateless/event_draft"; ... EVENTS_DRAFT.push({ //<=== imported array howmanykeys: "random string", }); let EVENTS_DRAFT_LOCAL = ['EVENTS_DRAFT_LOCAL']; EVENTS_DRAFT_LOCAL.push({ howmanykeys: "random string", })Según console.log a continuación, EVENTS_DRAFT_LOCAL funciona como se esperaba, pero EVENTS_DRAFT importado le da a este objeto de matriz "roto" una longitud aparente de 2, pero luego tiene realmente 5 elementos cuando se expande.
Si presiono una cadena en lugar de un objeto, ambas matrices funcionan como se esperaba. No puedo reproducir esto en una aplicación de nodo regular, por lo que sospecho que puede tener que ver con el algoritmo de diferenciación de React, pero no estoy seguro.
getCreateTasks.js
import { EVENTS_DRAFT } from "../../store/stateless/event_draft"; const getCreateTasks = (calDate) => { EVENTS_DRAFT.push({ howmanykeys: "random string", }); let EVENTS_DRAFT_LOCAL = ["EVENTS_DRAFT_LOCAL"]; EVENTS_DRAFT_LOCAL.push({ howmanykeys: "random string", }); console.log("EVENTS_DRAFT_LOCAL:"); console.log(EVENTS_DRAFT_LOCAL); console.log(""); console.log("EVENTS_DRAFT:"); console.log(EVENTS_DRAFT); }; export default getCreateTasks;event_draft.js
export const EVENTS_DRAFT = ['EVENTS_DRAFT'];código completo en github aquí. https://github.com/SeanLuo-FSWD/RTFEJS.git