Я пишу веб-компонент, используя StencilJS. Один из вспомогательных классов (ArrayHelper.ts
), который импортируется моим компонентом, имеет следующий импорт:
import transform from 'lodash/transform';
import isEmpty from 'lodash/isEmpty';
import isEqual from 'lodash/isEqual';
import isObject from 'lodash/isObject';
все это прекрасно работает при компиляции и обслуживании локально. Однако при написании некоторых модульных тестов и их выполнении с использованием jest jest не может правильно разрешить импорт:
TypeError: isObject_1.default is not a function at Function.Object.
<anonymous>.ArrayHelper.toArray (/mycomponent/ArrayHelper.ts:15:35)
Когда я изменяю импорт в ArrayHelper.ts
на
import { isEmpty, isEqual, isObject, transform } from 'lodash';
тогда Jest успешно запустит тесты без проблем, но тогда компиляция TS с помощью stencilJS больше не будет работать:
Missing Export: mycomponents/ArrayHelper.js:5:27
'isObject' is not exported by node_modules/lodash/lodash.js
Есть какие-нибудь идеи, как сделать этот импорт правильным для обеих ситуаций?