最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

Nodejs如何将实时数据从Firebase发送到Angular

运维笔记admin10浏览0评论

Nodejs如何将实时数据从Firebase发送到Angular

Nodejs如何将实时数据从Firebase发送到Angular

我通过nodejs处理firestore并将数据返回到angular - (当我处理带有角度的数据时,它将是实时的,但是节点不是这样)所以我想要角度收听Cloud Firestore上的任何更改。

/**
 * this is a route to call function get user By email
 */
router.get('/by/email/:email', (req,res)=>{
    //define email user
    let email = req.params.email;
    //check email param
    if(!email){ return res.status(400).json({message:'EMAILISMISSING'}) }
    //call function get user by email 
    userRef.getByEmail(email, (error,user)=>{
        if(error){ return res.status(400).json(error); }
        else{
            return res.status(200).json(user)
        }
    })
})


/**
 * this is the function bring user by email
 * @requires email
 * @returns @callback
 */
exports.getByEmail = (email,callback)=>{
    userRef.where('email','==',email)
           .get()
           .then(user=>{
                user = fb.renderMultiDocs(user);
                if(!user.length) { return callback(false,null)}
                return callback(false,user[0]);
           })
           .catch(error=>{
               return callback(error,false)
           })
}

/**
* this angular function to call by/email route and return
*/
getUserByEmail(email):any{
  return this._http.get(environment.api+'by/email/'+email)
}
回答如下:

如果您想从Angular应用程序中侦听Cloud Firestore数据库中的实时更改/更新,则需要为一个文档或一组文档(即整个集合或查询)设置一个侦听器。

关于这一点的标准Firestore文档在这里:https://firebase.google/docs/firestore/query-data/listen。这将独立于如何执行修改(由用户或后端进程,如node.js应用程序或云功能)。

使用Angular,您可能会使用AngularFire2库,特别是以下文档中描述的技术:

  • 对于一份文件:https://github/angular/angularfire2/blob/master/docs/firestore/documents.md#using-angularfirestoredocument
  • 对于集合(和查询):https://github/angular/angularfire2/blob/master/docs/firestore/collections.md#streaming-collection-data
发布评论

评论列表(0)

  1. 暂无评论