# #javascript #firebase #vue.js #firebase-realtime-database
Вопрос:
Я пытаюсь разбить список элементов на страницы с помощью Vuefire, и по какой-то причине я получаю ошибку с приведенным ниже кодом (когда я звоню startAfter()
, функция работает нормально startAt()
).
lastVisible
является объектом в состоянии моего компонента со свойством expire_date
(метка времени UNIX)
Это ошибка, которую я получаю
Есть идеи, что не так?
async seeFurtherGames() {
var games_ref = db.ref('games')
console.log("GameBrowser.seeOlderGames()", this.lastVisible, games_ref)
if (this.lastVisible) {
var start = this.lastVisible.expire_date
var query = games_ref.orderByChild('expire_date').startAfter(start).limitToFirst(this.item_limit)
await this.$bind("games", query)
this.setLastVisible()
}
}
Uncaught (in promise) TypeError: games_ref.orderByChild(...).startAfter is not a function
at _callee3$ (webpack-internal:///./node_modules/cache-loader/dist/cjs.js?!./node_modules/babel-loader/lib/index.js!./node_modules/cache-loader/dist/cjs.js?!./node_modules/vue-loader/lib/index.js?!./src/views/GameBrowser.vue?vueamp;type=scriptamp;lang=jsamp;:257)
at f (chrome-extension://bfnaelmomeimhlpmgjnjophhpkkoljpa/content_script/inpage.js:141)
at Generator._invoke (chrome-extension://bfnaelmomeimhlpmgjnjophhpkkoljpa/content_script/inpage.js:141)
at Generator.next (chrome-extension://bfnaelmomeimhlpmgjnjophhpkkoljpa/content_script/inpage.js:141)
at asyncGeneratorStep (webpack-internal:///./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js:9)
at _next (webpack-internal:///./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js:31)
at eval (webpack-internal:///./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js:38)
at new Promise (<anonymous>)
at eval (webpack-internal:///./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js:27)
at VueComponent.seeFurtherGames (webpack-internal:///./node_modules/cache-loader/dist/cjs.js?!./node_modules/babel-loader/lib/index.js!./node_modules/cache-loader/dist/cjs.js?!./node_modules/vue-loader/lib/index.js?!./src/views/GameBrowser.vue?vueamp;type=scriptamp;lang=jsamp;:270)
Комментарии:
1. Какую версию JavaScript SDK вы включаете?
2. «firebase»: «^8.2.0», @FrankvanPuffelen
3. Похоже, обновление до v9 устранило мою проблему!
Ответ №1:
Операции startAfter
и endBefore
в базе данных Firebase в реальном времени были представлены в версии 8.2.7 пакета SDK JavaScript.
Ответ №2:
Я смог решить эту проблему, обновив firebase с v8 до v9