Не зная вашего полного варианта использования, трудно сказать, но если я правильно понимаю, вы хотите создать пакет, я назову его fooLib
, и вас беспокоит, используется ли этот проект в projA
и projB
:
Если вы используете статический ключ, например fooLibKey
:
projA
и projB
будут использовать одно и то же хранилище
Если вы используете динамически сгенерированный ключ, такой как UUID:
- Каждый раз, когда вы перезагружаете страницу, вы теряете свой магазин.
Я подозреваю, что вам следует разрешить зависимым проектам (projA
, projB
и т. Д.) Настроить ключ:
// in projA
import fooLib from 'foo-lib'
fooLib.init({
keyName: 'projAFooLib',
})
Нет надежного способа получить имя клиентского пакета. В проекте Node вы могли бы идти вверх до тех пор, пока не найдете файл package.json
и попытаться вывести его из этого, но это довольно рискованно, и реального способа сделать это в браузерном проекте не существует.