用steemjs嵌套的读取文章的所有评论

嘎子 steemit 2018-01-25 1,349 次浏览 , 没有评论

在上一篇文章如何用steemjs读取文章的评论 — Steemit中,和大家介绍了如何用SteemJs来读取评论,但并不完整。当时也提出了只读取了第一层的评论,如何读取所有评论呢?这里就给大家介绍一下:

1、blockchain的数据结构

这里当然不会详细讲,我也不太清楚。但从读取评论时我就发现了,其实在blockchain中评论和文章差别非常小,你可以把评论写的比文章都复杂。我们在这里用节点来表示,你可以把节点想象成一块数据,里面存储的都是文字。

多数节点都是有子有父的,我们可以通过父节点来查找他的子节点,正如如何用steemjs读取文章的评论 — Steemit中所说的那样,用steem.api.getContentReplies(author, permlink, callback)这个函数就可以。

如果一个节点没有父节点,那么这个节点保存的内容就是传统意义上的文章,如果一个文章有父节点,那么这个节点保存的就是传统意义上的评论。如果明白了这一点,那些递归的查询所有评论就非常容易了。

2、递归查询代码

还是老规矩,我也将代码发到SteemJsExamples/readNestedComments.html at master · RileyGe/SteemJsExamples上了,有兴趣可以自己翻看。

3、代码解释

其实这段代码非常简单,相比如何用steemjs读取文章的评论 — Steemit只是把steem.api.getContentReplies(author, permlink, callback)的回调函数独立出来。

而且在回调函数中增加了一个功能。如果读出的评论的孩子节点多于0个,则嵌套的调用steem.api.getContentReplies(author, permlink, callback)函数把孩子节点的信息也读取出来。

简单吧,只要理解了结构,做起来就非常简单。

原创文章,文章首发于:Riley Ge (@rileyge) — Steemit

原创文章,转载请注明: 转载自TsonTec:测量解决方案提供者

本文链接地址: 用steemjs嵌套的读取文章的所有评论

相关主题

说点什么

您将是第一位评论人!

提醒
avatar
回顶部