跳至内容

API 文档 / vuefire

模块: vuefire

接口

引用

rtdbPlugin

重命名和重新导出 databasePlugin

类型别名

FirebaseOption

Ƭ FirebaseOption: VueFirebaseObject | () => VueFirebaseObject


FirestoreOption

Ƭ FirestoreOption: VueFirestoreObject | () => VueFirestoreObject


UseListOptions

Ƭ UseListOptions<DataT>: UseDatabaseRefOptions<DataT>

类型参数

名称类型
DataTunknown

UseObjectOptions

Ƭ UseObjectOptions<DataT>: UseDatabaseRefOptions<DataT>

类型参数

名称类型
DataTunknown

VueDatabaseDocumentData

Ƭ VueDatabaseDocumentData<T>: null | T & { id: string }

serialize 选项默认使用的类型。

类型参数

名称类型
Tunknown

VueDatabaseQueryData

Ƭ VueDatabaseQueryData<T>: _Simplify<NonNullable<VueDatabaseDocumentData<T>>>[]

与 VueDatabaseDocumentData 相同,但用于查询。

类型参数

名称类型
Tunknown

VueFirebaseObject

Ƭ VueFirebaseObject: Record<string, Query | DatabaseReference>


VueFirestoreDocumentData

Ƭ VueFirestoreDocumentData<T>: null | T & { id: string }

firestoreDefaultConverter 默认使用的类型。

类型参数

名称类型
TDocumentData

VueFirestoreObject

Ƭ VueFirestoreObject: Record<string, _FirestoreDataSource>


VueFirestoreQueryData

Ƭ VueFirestoreQueryData<T>: _Simplify<NonNullable<VueFirestoreDocumentData<T>>>[]

类型参数

名称类型
TDocumentData

变量

devalueCustomParsers

Const devalueCustomParsers: Object

用于 devalue 的自定义解析器,以支持 SSR 上的 Firestore Timestamp 和 GeoPoint。

类型声明

名称类型
GeoPoint(data: { latitude: number ; longitude: number }) => GeoPoint
TimeStamp(data: { nanoseconds: number ; seconds: number }) => Timestamp

devalueCustomStringifiers

Const devalueCustomStringifiers: Object

用于 devalue 的自定义字符串化器,以支持 SSR 上的 Firestore Timestamp 和 GeoPoint。

类型声明

名称类型
GeoPoint(data: unknown) => false | { latitude: number ; longitude: number }
TimeStamp(data: unknown) => false | { nanoseconds: number ; seconds: number }

firestoreDefaultConverter

Const firestoreDefaultConverter: FirestoreDataConverter<VueFirestoreDocumentData>

Firestore 数据的默认转换器。可以通过设置 globalFirestoreOptions.converter 在全局范围内覆盖。


globalDatabaseOptions

Const globalDatabaseOptions: _DatabaseRefOptionsWithDefaults


globalFirestoreOptions

Const globalFirestoreOptions: _FirestoreRefOptionsWithDefaults

全局默认选项

函数

VueFire

VueFire(app, «destructured»): void

VueFire Vue 插件。

参数

名称类型
appApp<any>
«destructured»VueFireOptions

返回

void


VueFireAppCheck

VueFireAppCheck(options): (firebaseApp: FirebaseApp, app: App<any>) => void

要添加到 VueFire Vue 插件选项中的 VueFire 应用检查模块。此模块 **仅限客户端**,不应在服务器上添加。

参数

名称类型
optionsVueFireAppCheckOptions

返回

fn

▸ (firebaseApp, app): void

参数
名称类型
firebaseAppFirebaseApp
appApp<any>
返回

void

示例

ts
import { createApp } from 'vue'
import { VueFire, VueFireAppCheck } from 'vuefire'

const app = createApp(App)
app.use(VueFire, {
  modules: [VueFireAppCheck()],
})

VueFireAuth

VueFireAuth(initialUser?): VueFireModule

要添加到 VueFire Vue 插件选项中的 VueFire Auth 模块。这将使用 **所有** 依赖项调用 VueFireAuthWithDependencies(),从而增加捆绑包大小。考虑使用 VueFireAuthWithDependencies() 来更好地控制捆绑包大小。

参数

名称类型描述
initialUser?_Nullable<User>用户的初始值。用于 SSR

返回

VueFireModule

参见

https://firebase.google.com/docs/auth/web/custom-dependencies

示例

ts
import { createApp } from 'vue'
import { VueFire, VueFireAuth } from 'vuefire'

const app = createApp(App)
app.use(VueFire, {
 modules: [VueFireAuth()],
})

VueFireAuthOptionsFromAuth

VueFireAuthOptionsFromAuth(options): VueFireModule

要添加到 VueFire Vue 插件选项中的 VueFire Auth 模块。它接受一个 auth 实例而不是依赖项。它允许手动调用模拟器和其他高级用例。对于大多数用例,请优先使用 VueFireAuthWithDependencies()VueFireAuth()

参数

名称类型描述
optionsVueFireAuthOptionsFromAuth身份验证实例和初始用户

返回值

VueFireModule


VueFireAuthWithDependencies

VueFireAuthWithDependencies(options): VueFireModule

要添加到 VueFire Vue 插件选项中的 VueFire 身份验证模块。它接受传递给 initializeAuth() 的依赖项,以更好地控制包大小。

参数

名称类型描述
optionsVueFireAuthOptions传递给 initializeAuth() 的用户和选项。

返回值

VueFireModule


VueFireDatabaseOptionsAPI

VueFireDatabaseOptionsAPI(pluginOptions?): (firebaseApp: FirebaseApp, app: App<any>) => void

要添加到 VueFire Vue 插件选项中的 VueFire 数据库模块。如果您**仅使用组合 API**(例如 useDatabaseObject()useDatabaseList()),则不应添加它。

参数

名称类型
pluginOptions?DatabasePluginOptions

返回值

fn

▸ (firebaseApp, app): void

参数
名称类型
firebaseAppFirebaseApp
appApp<any>
返回值

void

示例

ts
import { createApp } from 'vue'
import { VueFire, VueFireDatabaseOptionsAPI } from 'vuefire'

const app = createApp(App)
app.use(VueFire, {
  modules: [VueFireDatabaseOptionsAPI()],
})

VueFireFirestoreOptionsAPI

VueFireFirestoreOptionsAPI(pluginOptions?): (firebaseApp: FirebaseApp, app: App<any>) => void

要添加到 VueFire Vue 插件选项中的 VueFire Firestore 模块。

参数

名称类型
pluginOptions?FirestorePluginOptions

返回值

fn

▸ (firebaseApp, app): void

参数
名称类型
firebaseAppFirebaseApp
appApp<any>
返回值

void

示例

ts
import { createApp } from 'vue'
import { VueFire, VueFireFirestoreOptionsAPI } from 'vuefire'

const app = createApp(App)
app.use(VueFire, {
  modules: [VueFireFirestoreOptionsAPI()],
})

databaseDefaultSerializer

databaseDefaultSerializer(snapshot): VueDatabaseDocumentData<unknown>

将**存在**的 ref 的 firebase 数据库快照转换为可绑定数据记录。

参数

名称类型
snapshotDataSnapshot

返回值

VueDatabaseDocumentData<unknown>


databasePlugin

databasePlugin(app, pluginOptions?, firebaseApp?): void

如果您想添加 $databaseBind$databaseUnbind 函数,请安装此插件。请注意,此插件仅在您使用选项 API 时才需要。如果您**仅使用组合 API**(例如 useDatabaseObject()useDatabaseList()),则不应添加它。

参数

名称类型
appApp<any>
pluginOptions?DatabasePluginOptions
firebaseApp?FirebaseApp

返回值

void

已弃用

请改用 VueFireVueFireDatabaseOptionsAPI 以及 modules 选项。


firestorePlugin

firestorePlugin(app, pluginOptions?, firebaseApp?): void

安装此插件以添加 $firestoreBind$firestoreUnbind 函数。请注意,如果您仅使用组合 API(useDocument()useCollection()),则不需要此插件。

参数

名称类型
appApp<any>
pluginOptions?FirestorePluginOptions
firebaseApp?FirebaseApp

返回值

void

已弃用

请改用 VueFireVueFireFirestoreOptionsAPI 以及 modules 选项。b


getCurrentUser

getCurrentUser(name?): Promise<_Nullable<User>>

返回一个 promise,该 promise 在用户加载后解析当前用户。必须在初始化 firebase 应用程序后调用。

参数

名称类型描述
name?stringfirebase 应用程序的名称

返回值

Promise<_Nullable<User>>


updateCurrentUserProfile

updateCurrentUserProfile(profile): Promise<void>

更新当前用户配置文件并更新当前用户状态。此函数在内部调用来自 'firebase/auth' 的 updateProfile(),然后更新当前用户状态。

参数

名称类型描述
profileObject新的个人资料信息
profile.displayName?_Nullable<string>-
profile.photoURL?_Nullable<string>-

返回值

Promise<void>


useAppCheck

useAppCheck(name?): AppCheck

检索 Firebase 应用程序检查实例。

参数

名称类型描述
name?string应用程序的名称

返回值

AppCheck


useAppCheckToken

useAppCheckToken(): Ref<undefined | string>

当前应用程序检查令牌作为 Ref。请注意,此 ref 在服务器上始终为 undefined。

返回值

Ref<undefined | string>


useCollection

useCollection<R>(collectionRef, options?): _RefFirestore<_InferReferenceType<R>[]>

从 Firestore 中的集合 ref 或查询创建文档的反应式集合(通常是数组)。提取查询或转换器的类型。

类型参数

名称类型
Rextends Query<unknown, DocumentData> | CollectionReference<unknown, DocumentData>

参数

名称类型描述
collectionRefMaybeRefOrGetter<_Nullable<R>>查询或集合
options?UseCollectionOptions<_InferReferenceType<R>[]>可选选项

返回值

_RefFirestore<_InferReferenceType<R>[]>

useCollection<T>(collectionRef, options?): _RefFirestore<VueFirestoreQueryData<T>>

从 Firestore 中的集合 ref 或查询创建文档的反应式集合(通常是数组)。接受一个泛型来**强制返回 Ref 的类型**。请注意,您可以(并且可能应该)使用 .withConverter() 来获得集合引用的更严格的类型安全版本。

类型参数

名称
T

参数

名称类型描述
collectionRefMaybeRefOrGetter<_Nullable<Query<unknown, DocumentData> | CollectionReference<unknown, DocumentData>>>查询或集合
options?UseCollectionOptions<T[]>可选选项

返回值

_RefFirestore<VueFirestoreQueryData<T>>


useCurrentUser

useCurrentUser(name?): Ref<_Nullable<User>>

返回 Firebase 应用程序中当前已认证用户的响应式变量。如果用户未认证或用户注销,则该引用为 null。在用户最初加载之前,该引用为 undefined。

参数

名称类型描述
name?string应用程序的名称

返回值

Ref<_Nullable<User>>


useDatabase

useDatabase(name?): Database

检索 Database 实例。

参数

名称类型描述
name?string应用程序的名称

返回值

Database

Database 实例


useDatabaseList

useDatabaseList<T>(reference, options?): _RefDatabase<VueDatabaseQueryData<T>>

创建一个与数据库连接的响应式变量,作为数组。数组中的每个元素都将包含一个 id 属性。请注意,如果您覆盖了 serialize 选项,它也应该 **在其中设置一个 id 属性** 才能使它正常工作。

类型参数

名称类型
Tunknown

参数

名称类型描述
referenceMaybeRefOrGetter<_Nullable<Query | DatabaseReference>>对数据库的引用或查询
options?UseListOptions<T>可选选项

返回值

_RefDatabase<VueDatabaseQueryData<T>>


useDatabaseObject

useDatabaseObject<T>(reference, options?): _RefDatabase<VueDatabaseDocumentData<T> | undefined>

创建一个与数据库连接的响应式变量,作为对象。如果引用是原始值,它将被转换为包含一个 $value 属性(具有原始值)和一个 id 属性(具有引用的键)的对象。

类型参数

名称类型
Tunknown

参数

名称类型描述
referenceMaybeRefOrGetter<_Nullable<DatabaseReference>>对数据库的引用或查询
options?UseObjectOptions<T>可选选项

返回值

_RefDatabase<VueDatabaseDocumentData<T> | undefined>


useDocument

useDocument<R>(documentRef, options?): _RefFirestore<_InferReferenceType<R> | undefined>

从 Firestore 的文档引用创建响应式文档。自动提取转换器或文档的类型。

类型参数

名称类型
Rextends DocumentReference<unknown, DocumentData>

参数

名称类型描述
documentRefMaybeRefOrGetter<_Nullable<R>>文档引用
options?UseDocumentOptions<_InferReferenceType<R>>可选选项

返回值

_RefFirestore<_InferReferenceType<R> | undefined>

useDocument<T>(documentRef, options?): _RefFirestore<VueFirestoreDocumentData<T> | undefined>

从 Firestore 中的集合 ref 或查询创建文档的反应式集合(通常是数组)。接受一个泛型来**强制返回 Ref 的类型**。请注意,您可以(并且可能应该)使用 .withConverter() 来获得集合引用的更严格的类型安全版本。

类型参数

名称
T

参数

名称类型描述
documentRefMaybeRefOrGetter<_Nullable<DocumentReference<DocumentData, DocumentData>>>查询或集合
options?UseDocumentOptions<T>可选选项

返回值

_RefFirestore<VueFirestoreDocumentData<T> | undefined>


useFirebaseApp

useFirebaseApp(name?): FirebaseApp

获取 Firebase 应用程序实例。

参数

名称类型描述
name?string可选的 Firebase 应用程序名称

返回值

FirebaseApp

Firebase 应用程序


useFirebaseAuth

useFirebaseAuth(): Auth | null

检索 Firebase Auth 实例。**在服务器上返回 null**。在客户端使用 TypeScript 时,您可以使用 useFirebaseAuth()! 强制类型。

返回值

Auth | null

Auth 实例


useFirebaseStorage

useFirebaseStorage(name?): FirebaseStorage

检索 Storage 实例。

参数

名称类型描述
name?string应用程序的名称

返回值

FirebaseStorage

Database 实例


useFirestore

useFirestore(name?): Firestore

检索 Firestore 实例。

参数

名称类型描述
name?string应用程序的名称

返回值

Firestore

Firestore 实例


useIsCurrentUserLoaded

useIsCurrentUserLoaded(name?): ComputedRef<boolean>

一个辅助函数,返回一个计算后的布尔值,一旦当前用户不再为 undefined,它将变为 true。请注意,这不能确保用户已登录,只能确保初始登录过程已运行。

参数

名称类型描述
name?string应用程序的名称

返回值

ComputedRef<boolean>


useList

useList<T>(reference, options?): _RefDatabase<VueDatabaseQueryData<T>>

类型参数

名称类型
Tunknown

参数

名称类型
referenceMaybeRefOrGetter<_Nullable<Query | DatabaseReference>>
options?UseListOptions<T>

返回值

_RefDatabase<VueDatabaseQueryData<T>>

已弃用

请改用 useDatabaseList()


useObject

useObject<T>(reference, options?): _RefDatabase<VueDatabaseDocumentData<T> | undefined>

类型参数

名称类型
Tunknown

参数

名称类型
referenceMaybeRefOrGetter<_Nullable<DatabaseReference>>
options?UseObjectOptions<T>

返回值

_RefDatabase<VueDatabaseDocumentData<T> | undefined>

已弃用

请改用 useDatabaseObject()


usePendingPromises

usePendingPromises(app?): Promise<readonly [string, unknown][]>

允许等待所有挂起的數據源。在等待 SSR 时很有用

参数

名称类型描述
app?FirebaseAppFirebase 应用程序

返回值

Promise<readonly [string, unknown][]>

  • 一个 Promise,它将解析为所有已解析的挂起 Promise 的数组

useSSRInitialState

useSSRInitialState(initialState, firebaseApp): SSRStore

允许在客户端获取 SSR 期间设置的初始状态。

参数

名称类型描述
initialStateundefined | SSRStore在 SSR 期间为 Firebase 应用设置的初始状态。传递 undefined 表示不设置它
firebaseAppFirebaseApp要获取初始状态的 Firebase 应用

返回

SSRStore

当前 firebaseApp 的初始状态


useStorage

useStorage(name?): FirebaseStorage

参数

名称类型
name?string

返回

FirebaseStorage

已弃用

请使用 useFirebaseStorage() 代替


useStorageFile

useStorageFile(storageRef): Object

StorageReference 的响应式信息(url、元数据)。允许更新和删除存储对象。

参数

名称类型描述
storageRefMaybeRefOrGetter<_Nullable<StorageReference>>StorageReference

返回

Object

名称类型
metadataShallowRef<undefined | null | FullMetadata>
refresh() => Promise<[null | string, null | FullMetadata]>
snapshotShallowRef<undefined | null | UploadTaskSnapshot>
updateMetadata(newMetadata: SettableMetadata) => Promise<null | FullMetadata>
upload(newData: Blob | Uint8Array | ArrayBuffer, newMetadata?: UploadMetadata) => undefined | Promise<unknown>
uploadErrorShallowRef<undefined | null | StorageError>
uploadProgressComputedRef<null | number>
uploadTaskShallowRef<undefined | null | UploadTask>
urlRef<undefined | null | string>

useStorageFileMetadata

useStorageFileMetadata(storageRef): Object

返回 StorageReference 元数据的响应式版本。如果 StorageReference 发生更改,则会自动更新。

参数

名称类型描述
storageRefMaybeRefOrGetter<_Nullable<StorageReference>>StorageReference

返回

Object

名称类型
metadataShallowRef<undefined | null | FullMetadata>
promiseShallowRef<Promise<null | FullMetadata>>
refresh() => Promise<null | FullMetadata>
update(newMetadata: SettableMetadata) => Promise<null | FullMetadata>

useStorageFileUrl

useStorageFileUrl(storageRef): Object

检索 StorageReference 的响应式下载 URL。如果 StorageReference 发生更改,则会自动更新。

参数

名称类型描述
storageRefMaybeRefOrGetter<_Nullable<StorageReference>>StorageReference

返回

Object

名称类型
promiseShallowRef<Promise<null | string>>
refresh() => Promise<null | string>
urlRef<undefined | null | string>

useStorageMetadata

useStorageMetadata(storageRef): Object

参数

名称类型
storageRefMaybeRefOrGetter<_Nullable<StorageReference>>

返回

Object

名称类型
metadataShallowRef<undefined | null | FullMetadata>
promiseShallowRef<Promise<null | FullMetadata>>
refresh() => Promise<null | FullMetadata>
update(newMetadata: SettableMetadata) => Promise<null | FullMetadata>

已弃用

请使用 useStorageFileMetadata() 代替


useStorageObject

useStorageObject(storageRef): Object

参数

名称类型
storageRefMaybeRefOrGetter<_Nullable<StorageReference>>

返回

Object

名称类型
metadataShallowRef<undefined | null | FullMetadata>
refresh() => Promise<[null | string, null | FullMetadata]>
snapshotShallowRef<undefined | null | UploadTaskSnapshot>
updateMetadata(newMetadata: SettableMetadata) => Promise<null | FullMetadata>
upload(newData: Blob | Uint8Array | ArrayBuffer, newMetadata?: UploadMetadata) => undefined | Promise<unknown>
uploadErrorShallowRef<undefined | null | StorageError>
uploadProgressComputedRef<null | number>
uploadTaskShallowRef<undefined | null | UploadTask>
urlRef<undefined | null | string>

已弃用

请使用 useStorageFile() 代替


useStorageUrl

useStorageUrl(storageRef): Object

参数

名称类型
storageRefMaybeRefOrGetter<_Nullable<StorageReference>>

返回

Object

名称类型
promiseShallowRef<Promise<null | string>>
refresh() => Promise<null | string>
urlRef<undefined | null | string>

已弃用

请使用 useStorageFileUrl() 代替