реагировать - импортировать 3 уровня глубоко реагировать - PullRequest
0 голосов
/ 29 июня 2018

Я использую реагирование и пробовал новый контекстный API для моего проекта, который называется "Reddit clone". Таким образом, мой Context создается в файле с именем provider.js, который находится в папке src рядом с App.js. Теперь я создал HeaderComponent в своей папке, которая импортирует Context следующим образом:

import Context from '../provider'

Я создал еще один компонент с именем LoginComponent внутри HeaderComponent. И, LoginComponent находится в своей собственной папке. Теперь я импортировал Context следующим образом:

import Context from '.../provider'

Tree

Импорт ../ работал нормально, но импортированные .../ броски и ошибки.

Не удалось скомпилировать.

. / Src / HeaderComponent / LoginComponent / index.js Модуль не найден: не удается разрешить '... / provider' в 'C: \ Users ....... \ reddit \ реагировать \ src \ HeaderComponent \ LoginComponent'

Ответы [ 3 ]

0 голосов
/ 29 июня 2018

Количество точек не имеет значения, которое вы, кажется, думаете, что они имеют. Вещи, чтобы запомнить:

  • ../ На одну директорию.
  • ../../ До двух каталогов (и т. Д.).
  • ./ Тот же каталог, что и текущий.

Имея это в виду, поскольку вам нужно подняться на один каталог (с LoginComponent до HeaderComponent), а затем снова на один каталог (с HeaderComponent до src), потому что именно там находится provider.js, вам нужно сделать:

import Context from '../../provider';
0 голосов
/ 29 июня 2018

Если вы запустили в своей консоли ls -la, вы увидите . и ... Так что . это текущий локальный каталог, где вы находитесь, а .. это ссылка на родительскую папку (на один уровень выше). Так что если вам нужно вернуть две папки, вам нужно поместить это два раза, вот так ../../.

В вашем случае import Context from '../../provider'

0 голосов
/ 29 июня 2018

Каждый шаг в структуре папок - это .., за которым следует /.

import Context from '../../provider'
...