Я создал внутреннее приложение, тогда как пользователи создаются администратором, использующим веб-приложение. Однако всякий раз, когда я создаю нового пользователя, firebase автоматически меняет пользователя на пользователя, с которым я вошел в систему, а это не то, что я хочу. Кто-нибудь знает, как я могу создать учетную запись пользователя в Firebase Auth без аутентификации в этой учетной записи сразу после ее создания и оставаться в учетной записи, с которой я вошел в систему?
Для дальнейшего уточнения, Я получаю эту ошибку:
Uncaught (in promise) FirebaseError: Firebase: Firebase App named '[DEFAULT]' already exists with different options or config (app/duplicate-app).
Найдите код на прикрепленной картинке Текущий код





Одним из обходных путей, который приходит на ум, было бы создание экземпляров отдельных приложений Firebase в вашем коде. Основное приложение firebase будет реальным, в которое входит администратор, а другие будут создаваться по запросу для использования для создания нового пользователя, а затем выбрасываются. Поскольку создание учетной записи происходит в других приложениях, администратор не должен выходить из основного приложения.
Например:
import { initializeApp } from 'firebase/app';
import { getAuth, signInWithEmailAndPassword } from 'firebase/auth';
let counter = 0; // Used to give every app a unique name
function createUser(email, password) {
counter++;
const app = initializeApp({
apiKey: // ...
authDomain: // ...
//etc
}, '' + counter);
const auth = getAuth(app);
signInWithEmailAndPassword(auth, email, password);
// app never gets used again after this.
}
Вам нужно дать каждому приложению уникальное имя, как в моем примере.
Здравствуйте Николай, спасибо за ответ! Я пробовал это, у меня есть значение по умолчанию, которое является приложением, тогда приложение, которое я инициализирую для этой функции, называется вторичным приложением. Это то, что вы имели в виду?
Когда вы вызываете initializeApp, вы можете передать ему второй параметр. Это название приложения. В моем примере это имя '' + counter, что гарантирует его уникальность каждый раз. Если вы не передадите имя, то firebase инициализирует приложение по умолчанию. Вы можете инициализировать приложение только один раз, поэтому, если вы попытаетесь инициализировать одно и то же приложение, вы получите показанную ошибку.
Привет, я обновил свой вопрос выше. Я уже пробовал этот метод, и я получаю сообщение об ошибке