[英]Importing js to Vue project
我正在考虑使用 Vuefire 来更轻松地将 Firestore 与我的 Vue 项目集成。 在阅读 入门文档时,他们让您创建一个 db.js 文件,以便您可以“方便地”将其导入项目中的任何位置。
import firebase from 'firebase/app'
import 'firebase/firestore'
// Get a Firestore instance
export const db = firebase
.initializeApp({ projectId: 'MY PROJECT ID' })
.firestore()
// Export types that exists in Firestore
// This is not always necessary, but it's used in other examples
const { Timestamp, GeoPoint } = firebase.firestore
export { Timestamp, GeoPoint }
// if using Firebase JS SDK < 5.8.0
db.settings({ timestampsInSnapshots: true })
在绑定页面的下一步中,他们显示您可以将该模块导入“RecentDocuments”组件
// RecentDocuments.vue
import { db } from './db'
export default {
data() {
return {
documents: [],
}
},
firestore: {
documents: db.collection('documents'),
},
}
如果我将相同的 db.js 文件导入另一个组件,它不会创建 firebase 火库 object 的另一个实例,因为它基本上是再次调用.initializeApp?
// SomeOtherComponent.vue
import { db } from './db'
export default {
...
或者我不了解进口是如何运作的?
不,不会的。 导入只发生一次。 来自每个进口的出口实际上是单件。 您应该能够通过简单地将日志消息添加到导入来验证这一点。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.