Импорт возвращается неопределенным при импорте из другого пакета - PullRequest
0 голосов
/ 28 января 2020

У меня действительно странная ошибка. Представьте, что у меня есть репозиторий с рабочими пространствами пряжи, который содержит:

  • theme
  • ui
  • addon-1
  • addon-2

В моем пакете theme есть файл index.js, который экспортирует такие компоненты:

export { default as Markdown } from './components/markdown';
export { default as Image } from './components/image';

Уценка:

import { Display } from 'ui'
//...

Изображение:

import { Display } from 'ui'
//...

Теперь интересная часть. addon-1 использует import { Markdown } from 'theme' и работает отлично. addon-2 использует import { Image } from 'theme' и Image загружен, но Display, или, лучше сказать, целое ui, теперь не определено. Тот же самый пакет ui используется в Markdown, где он все еще доступен. Это тот же пакет .. в той же папке node_modules. Whyyyy? Я не понимаю Более того ... когда я импортирую Image по относительному пути из другого компонента в том же пакете ... это работает. Я не понимаю.

У кого-нибудь есть идеи?

Я уже пытался сбросить все ... удаление node_modules, удаление yarn.lock, запуск yarn cache clean .. Я даже пытался удалить экспорт из индекса. js и прямой импорт изображения через import Image from 'theme/components/image'. Переключение со стандартного на именованный экспорт ..

1 Ответ

0 голосов
/ 28 января 2020

ОК, проблема решена методом проб и ошибок. Мой код был абсолютно верным, но я экспортировал вещи из другого пакета перед импортом ... Я до сих пор не знаю почему, но когда я не экспортирую их, а импортирую напрямую из другого пакета, это работает.

...