Ответ 1
Как и Firebase 3.2.1, типовые данные включены в официальный пакет NPM:
https://firebase.google.com/support/release-notes/js#wzxhzdk4version_321_-_july_26_2016wzxhzdk5
Я пытаюсь разработать веб-приложение с аутентификацией angular2 и firebase 3.0 в соответствии с рекомендациями, данными Google. Однако все руководства для Интернета имеют примеры javascript.
Я добавил ниже строки в свой index.html
<script src="https://www.gstatic.com/firebasejs/live/3.0/firebase.js"></script>
var config = {
apiKey: "AIzaSyCSfBMvAdEDpcm-z6gWp2XXXXXXXXXXXXX",
authDomain: "fototrans-calculator.firebaseapp.com",
databaseURL: "https://fototrans-calculator.firebaseio.com",
storageBucket: "fototrans-calculator.appspot.com",
};
firebase.initializeApp(config);
Но когда я пытаюсь использовать
rootRef = firebase.database.ref();
Я получаю сообщение об ошибке "firebase", говоря
[ts] Cannot find name 'firebase'.
Теперь я помню, что я установил firebase с использованием титров для предыдущей версии Firebase. У нас есть такая вещь для новой версии Firebase? Пожалуйста, направляйте.
Заранее спасибо
Как и Firebase 3.2.1, типовые данные включены в официальный пакет NPM:
https://firebase.google.com/support/release-notes/js#wzxhzdk4version_321_-_july_26_2016wzxhzdk5
Вы можете обойти это, выполнив declare var firebase: any;
Существует файл определения типа, доступный в https://github.com/suhdev/firebase-3-typescript
Я отправил запрос , который, надеюсь, решит проблему, которую вы описываете.
Вы можете использовать файл определения типов, указанный в репозитории AngularFire2 GitHub (расположенный здесь):
Включите в свой typings.json
файл следующее:
{
"ambientDependencies": {
"firebase": "github:angular/angularfire2/manual_typings/firebase3/firebase3.d.ts#2c9ab3117eeb804e8e4996461eddcf32efa54a56"
}
}
Обратите внимание, что здесь значение - это просто путь к файлу в GitHub, за которым следует соответствующий хеш фиксации. Хэш в примере master
во время написания, поэтому вы можете обновить его до последней фиксации.
Затем вы можете запустить node_modules/.bin/typings install
, а Typings будет применять последние изменения в вашем файле typings.json
.
Вы можете попробовать использовать его: https://github.com/angular/angularfire2/tree/master/manual_typings/firebase3
И чтобы заставить его работать, вам нужно добавить его в свой tsconfig.json:
"filesGlob": [
"**/*.ts",
"!node_modules/**/*",
"firebase3.d.ts"
],
И скопируйте файл в ту же папку, что и ваш tsconfig.json.