инициализация fire SQL без инициализации firebase, это возможно? - PullRequest
0 голосов
/ 26 апреля 2020

У меня уже есть firebase, инициализированный в моем app.module.ts с конфигом и всем этим, и я собираюсь использовать fire SQL для получения элементов из моей базы данных, потому что мне нравится код mySQL, чтобы сделать это, но проблема в том, что страница о пожаре SQL на firebaseopensource.com говорит, что вы должны объявить пожар SQL следующим образом:

firebase.initializeApp({config});
const fireSQL = new FireSQL(firebase.firestore());

И я не хочу этого делать это, снова инициализировать здесь firebase, есть ли способ изменить "firebase.firestore ()" на что-то, что принимает уже инициализированный firebase?

РЕДАКТИРОВАТЬ: другое решение для моей проблемы будет знать, как сделать этот запрос в запросе firebase:

$query = "SELECT * FROM " . ITEMS_TABLE . " WHERE (category LIKE '%".$category."%' AND (title LIKE '%" . $text . "%' OR description LIKE '%" . $text . "%')) ORDER BY ".$orderby." ".$ascdesc;

Это в PHP, а не в машинописи, потому что это из другого проекта, который я преобразую в angular

1 Ответ

0 голосов
/ 26 апреля 2020

Похоже, new FireSQL(...) принимает любой экземпляр Firestore. Когда вы вызываете new FireSQL(firebase.firestore()), он создает или получает объект Firestore для объекта FirebaseApp по умолчанию. Поэтому, если вы ранее создали по умолчанию (без имени) FirebaseApp, код firebase.firestore() извлечет службу Firestore из этого того же объекта.

Если у вас есть другой не по умолчанию Экземпляр FirebaseApp или Firestore уже можно передать в FireSQL следующим образом: new FireSQL(myApp.firestore()) или new FireSQL(myFirestore).


Вы не сможете запустить точный эквивалент этого запроса на Firestore, потому что Firestore не поддерживает предложения title LIKE '%" . $text. См .:

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...