做博客评论系统的一些总结

评论记录按列表存储.每一条评论记录保留对父级评论id 的引用.
(而不是用树形结构来表示)
这样可以同时优化前端 UI 展示以及数据结构的设计.

回复 {{idToContentMap[item.parent] !== undefined ? idToContentMap[item.parent]['author_name'] : ''}} 说:

mustache 模板引擎和 v-if 指令似乎是分开解析的,并没有一个类似 promise 的东西来保证 v-if 为 false 时,跳过{{expression}}里 expression 的执行.

      this.commentList.forEach(v => {
        this.$set(this.idToContentMap, v.id, {
          'author_name': v['author_name'],
          'content': v['content'].rendered
        })
      })

在初始化数据时对数据进行格式化处理,可以提高网页性能.避免在渲染模板时不断的循环查询数据.

你可能感兴趣的:(做博客评论系统的一些总结)