DraftJS getBlocksAsArray() возвращает массив массива в производстве, но только массив в dev (и работает)

У меня есть следующий код:

 const sampleMarkup = "<div>Insert Text Here</div>";

    const blocksFromHTML = convertFromHTML(sampleMarkup);
    let builtContentState = ContentState.createFromBlockArray(blocksFromHTML.contentBlocks);
    console.log("builtContentState", builtContentState.getBlocksAsArray());

В моей среде разработки журнал консоли выглядит так:

введите здесь описание изображения

В то время как в производственной среде это выглядит так:

введите здесь описание изображения

Излишне говорить, что они выглядят очень по-разному и из одного и того же кода. Все в сборке работает, кроме этого (и это довольно большой проект с множеством движущихся частей, узловых модулей и т. д.), поэтому я не уверен, что может вызывать эти конкретные проблемы.

По сути, проблема заключается в том, что для одних и тех же входных данных и результатов я получаю другой результат от getBlocksAsArray();

const sampleMarkup = "<div>Insert Text Here</div>";

const blocksFromHTML = convertFromHTML(sampleMarkup);

let builtContentState = ContentState.createFromBlockArray(blocksFromHTML.contentBlocks);
console.log("builtContentState", builtContentState.getBlocksAsArray());

return <div>{JSON.stringify(builtContentState)}</div>

Где выходные данные JSX показывают ту же форму объекта, но getBlocksAsArray() имеет разные выходные данные (как показано на снимке экрана выше)


person meds    schedule 21.05.2019    source источник


Ответы (1)


Я узнал, что это было вызвано включением в мой package.json более новой версии immutablejs, чем то, что поддерживал draftjs - не знаю, почему это повлияет на draftjs, но похоже, что в процессе минимизации провода getBlocksAsArray() были пересечены между внутренним пакетом в draftjs и тот, который я включил в свой package.json

person meds    schedule 04.06.2019