无法弄清楚如何使用Gridsome-Plugin-Firestore

时间:2019-12-01 20:41:55

标签: firebase vue.js gridsome

我正在尝试使用gridsome-plugin-firestore插件(https://gridsome.org/plugins/gridsome-source-firestore)。我想使用该插件连接到名为news的简单Firestore数据库集合。新闻有许多涉及各个领域的文件:

  • 内容
  • published_date
  • 摘要
  • 作者
  • 标题

有人知道我应该如何设置gridsome.config文件以使用gridsome-plugin-firestore插件访问此集合吗?我不能从给出的说明中弄清楚。

1 个答案:

答案 0 :(得分:0)

Gridsome文档比npm版本更清晰,但是您需要生成Firebase Admin SDK私钥,然后将整个文件下载到Gridsome应用程序中,然后将其作为模块导入到gridsome.config.js中,并以任意名称命名您想要选项>凭据:require字段,如下所示。

首先,您需要Firestore插件

$ yarn add gridsome-source-firestore

然后在gridsome.config.js中

const { db } = require('gridsome-source-firestore')

module.exports = {
  plugins: [
    {
      use: 'gridsome-source-firestore',
      options: {
        credentials: require('./my-project-firebase-adminsdk-qw2123.json'), // 
        Replace with your credentials file you downloaded.
        debug: true, // Default false, should be true to enable live data updates
        ignoreImages: false, // Default false
        imageDirectory: 'fg_images', // Default /fg_images
        collections: [
          {
            ref: (db) => {
              return db.collection('news')
            },
            slug: (doc, slugify) => {
              return `/news/${slugify(doc.data.title)}`
            },
            children: [
              {
                ref: (db, parentDoc) => {
                  return parentDoc.ref.collection('posts')
                },
                slug: (doc, slugify) => {
                  return `/${slugify(doc.data.title)}`
                },
              }
            ]
          }
        ]
      }
    }
  ]
}

您可能必须根据数据库结构将“帖子”更改为“内容”,并更改相应的页面查询以适合,在Github https://github.com/u12206050/gridsome-firestore-starter.git上的Gridsome Firestore入门中有一些示例和其他有用的设置信息

相关问题