Bit.dev не может добавить 2 компонента с одинаковым идентификатором - PullRequest
0 голосов
/ 31 января 2020

Для управления несколькими компонентами react я решил использовать бит . Затем я добавляю компонент loginForm, который является каталогом со следующей структурой:

├── loginForm
│   ├── loginForm.scss
│   └── loginForm.tsx

Я использую для этого команду cli add:

bit add ./loginForm/*

Но я получаю эту ошибку что я на самом деле не понимаю:

невозможно добавить 2 компонента с одинаковым идентификатором: логин-форма / логин-форма

Как кому-то идея?

Ответы [ 2 ]

2 голосов
/ 06 февраля 2020

единственное возможное для меня решение похоже на изменение одного имени файла, например

├─loginForm
│  │  loginForm.tsx
│  │  loginForm.style.scss
1 голос
/ 09 февраля 2020

Бит использует глобальные шаблоны для «поиска» файлов и создания отдельной команды add, каждая для набора файлов. Таким образом, в этом случае использование подстановочного знака (*) в папке с двумя файлами вернуло 2 файла команде bit add для итерации.

т.е. синтаксис в вопросе "" сниппет "для запуска:

$ bit add loginForm/loginForm.tsx
$ bit add loginForm/loginForm.scss

С этими двумя командами поведение Бита по умолчанию берет отслеживаемое имя файла и использует его в качестве имени компонента. Так что в обоих случаях это login-form. Бит не позволяет иметь два компонента с одинаковыми идентификаторами.

Чтобы Бит отслеживал всю папку как компонент, вы можете опустить подстановочный знак и запустить:

$ bit add ./loginForm

Таким образом, вы должны сказать Биту отслеживать весь каталог как один компонент, не отслеживая каждый отдельный файл как компонент.

Также возможно сгруппировать результаты шаблона глобуса в один компонент, используя параметр --id. Это заставляет Bit принимать все файлы, найденные в шаблоне glob, и вместо запуска «many» bit add (для каждого файла / каталога) запускает один файл с установленным ID компонента. Например:

$ bit add ./loginForm/* --id login-forum

Таким образом, он сообщает Bit добавить все файлы в каталоге ./loginForm для отслеживания одним экземпляром компонента. Используя опцию --id, вы также можете добавлять файлы в этот компонент даже после того, как он был отслежен, так как он сообщает битам add файлов с указанным идентификатором компонента.

Если у вас есть несколько папок, содержащих файлы, и вы Если каждая папка является компонентом и используется одна команда, тогда вы можете использовать шаблон глобуса.

├── LoginForm
│   ├── LoginForm.scss
│   └── LoginForm.tsx
└── LogoutForm
    ├── LogoutForm.scss
    └── LogoutForm.tsx

Вы можете выполнить:

$ bit add ./*

Чтобы шаблон глобуса дал bit add две папки для отслеживания.

...