myvin / juejin
- среда, 22 августа 2018 г. в 00:15:41
JavaScript
😄 掘金小程序
掘金第三方版--非掘金官方小程序
这并不是掘金官方小程序(貌似没有搜到掘金 APP 对应的官方小程序),完全为第三者开发者开发,仅用于学习交流,禁止用于其他用途。若要使用官方正版,可访问掘金 官方网站,或下载掘金官方 APP,或访问掘金官方其他途径。
该小程序所有 API 均来自掘金官方 web 网站和官方 Android 版 APP(以 web 为主),UI 是照抄参照的掘金官方 Android 版 APP(ver 5.4.3)。部分静态资源(icon、图片等)直接从掘金官方 apk 里拷出来的。
该小程序代码已开源,点击可查看源码,可随意 star。也可以先扫描下方的小程序码直接体验。
无
前段时间写了一个简单的小程序 QuietWeather,源码在这里,具体实现相关可查看这篇文章:两天撸一个天气应用微信小程序。但是这个 掘金小程序 和 QuietWeather 完全不是一个数量级的,说完具体实现,天都黑了,这里直接上效果图,感兴趣的可以 查看源码 。实际体验可扫描
对应页面可打开掘金官方
APP对比
PC开发者工具录制,会有些卡顿
文章数据入口调整了,也保留了动画,请酌情忽略
gif卡顿
APP 里面的东西实在是不少,包括页面和交互,要完全照抄实现确实需要一些时间和精力,UI 之类的都是简单测量+肉眼调试实现的,下面列出页面和交互的完成度,这里应该只是列出了绝大部分(还是上面那句话,APP 里面的东西实在是不少),未列出、未实现的后续会根据时间、精力来实现。
实际完成度请以代码为主(线上小程序也会持续更新)。
评论、留言、关注、添加到收藏集、喜欢、发表沸点等暂时均没有实现,因为 APP 里面的东西实在是不少......
API 域名(二级)真是多啊,小程序后台域名白名单最多只能配 20 个,现在已经占了 16 个了,感觉要完整APP 版小程序,配额不够啊。不行的话,就只能搭个 server 代理了;APP 用到了,请求字段需要按照 web 的略作调整;个别接口也要设置对应的 header;html 格式的 content,这里使用的是开源的 wxParse 进行富文本解析;url 不能在 webview 中打开,所以文章里面的外链能点开算我输;tab 页,如果已经滑到了顶部,onShow 获取新数据,否则,不刷新;未登录时,首页 APP 调用的 API 是 get_recommended_entry,get_entry_by_timeline;其他的不一一赘述,详情可 查看源码;API 需要天时地利人和,部分 API 返回的数据格式没有拿到,所以对应的页面也没有写,比如:系统消息页面(最近一直没有系统消息)等;category 有 collection、comment、follow、comment-like、pin-like、pin-comment,可能还会有其他消息类型,遇到了会一一补上;还有动态页,也是同样的问题;可能还有其他没有完全覆盖的数据;illegal token,亦或文章没有正常显示出来,应该是请求参数需要略作调整,或者文章类型需要判断。类似这样的小问题,后续会调整补充;APP 的 100% 的复制版,这样会显得比较臃肿,此处应该有 but,该小程序仅仅是出于学习交流的目的,所以这个问题不在我们的考虑范围内;如果我的项目对你有帮助,可以请我喝杯咖啡噢~
省事的可以先扫码领红包,然后扫支付宝将红包支付给我(商家)~
转载请注明出处