Skip to content

Commit cd5046b

Browse files
committed
fix: ensure objects in beforeCreate
Fix #274
1 parent 3774a8c commit cd5046b

File tree

2 files changed

+9
-16
lines changed

2 files changed

+9
-16
lines changed

packages/vuefire/src/index.js

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -47,10 +47,12 @@ export function firestorePlugin (
4747
strategies.firestore = strategies.provide
4848

4949
Vue.mixin({
50-
created () {
51-
const { firestore } = this.$options
50+
beforeCreate () {
5251
this._firestoreUnbinds = Object.create(null)
5352
this.$firestoreRefs = Object.create(null)
53+
},
54+
created () {
55+
const { firestore } = this.$options
5456
const refs =
5557
typeof firestore === 'function' ? firestore.call(this) : firestore
5658
if (!refs) return

packages/vuefire/src/rtdb.js

Lines changed: 5 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -57,19 +57,6 @@ function unbind (vm, key) {
5757
delete vm._firebaseUnbinds[key]
5858
}
5959

60-
/**
61-
* Ensure the related bookeeping variables on an instance.
62-
*
63-
* @param {Vue} vm
64-
*/
65-
function ensureRefs (vm) {
66-
if (!vm.$firebaseRefs) {
67-
vm.$firebaseRefs = Object.create(null)
68-
vm._firebaseSources = Object.create(null)
69-
vm._firebaseUnbinds = Object.create(null)
70-
}
71-
}
72-
7360
export function rtdbPlugin (
7461
Vue,
7562
{ bindName = '$rtdbBind', unbindName = '$rtdbUnbind' } = {}
@@ -78,8 +65,12 @@ export function rtdbPlugin (
7865
strategies.firebase = strategies.provide
7966

8067
Vue.mixin({
68+
beforeCreate () {
69+
this.$firebaseRefs = Object.create(null)
70+
this._firebaseSources = Object.create(null)
71+
this._firebaseUnbinds = Object.create(null)
72+
},
8173
created () {
82-
ensureRefs(this)
8374
let bindings = this.$options.firebase
8475
if (typeof bindings === 'function') bindings = bindings.call(this)
8576
if (!bindings) return

0 commit comments

Comments
 (0)