imsun / gitment

A comment system based on GitHub Issues.
https://imsun.github.io/gitment/
MIT License
4.06k stars 350 forks source link

支持通过issue number获取issue信息 #33

Open Yikun opened 7 years ago

Yikun commented 7 years ago

Hi, sun 非常感谢你的贡献,gitment是一个非常赞的实现。

我这里有一个小小的需求,想一起讨论下,支持类似

var gitment = new Gitment({
  number: '<%=number%>',
  owner: 'Yikun',
  repo: 'yikun.github.com',
// ... ...
}

的方式,通过issue number获取issue和comments信息

需求背景

解释下,为什么有这个需求:我使用issue作为博客的载体,之前搞过一个hexo-migrator-github-issue,把github issue导入到hexo中,这样每次我只需要在issue中编辑博客就可以了(就像这样),天然享用了github issue的图床、后台存储、分类。

gitment目前的实现,我需要指定creator和labels(比如issues?creator=imsun&labels=gitment-introduction),然而,issues number天生唯一,有了这个number,我就是在hexo-migrator-github-issue导出的插件中,直接生成github number然后传给gitment就好了。

可行性验证

修改类似这个patch:https://github.com/Yikun/gitment/commit/bb24c87a46fcfe46c79ffcba14fcce1f8ad070df 我已经在我的博客上用上了,示例页面 页面请求: 1

当然,patch中有点暴力,直接把id改了,只是为了验证功能。如最开始描述的那样,我们可以兼容增加number字段:

  1. 若传入了number字段,则使用/repos/${owner}/${repo}/issues/${id}
  2. 若未传入number字段,则使用/repos/${owner}/${repo}/issues?creator=owner&labels=id

如果OK的话,我可以提个PR,或者有什么更好的方式,也可以一起讨论下。

最后,欢迎大家使用hexo-migrator-github-issue用issue写博客,然后加上gitment获取评论,完美!哈哈