经过一周左右时间的开发,V2EX For You 小程序终于开发完成,并在今天正式上线啦!!!
作为我开发的第一款小程序,我对它还是比较满意的。至少跟现有的其它 V2EX 小程序比起来,V2EX For You 不管是从界面风格还是从功能上来说都有很多可圈可点的地方。
由于是 1.0 版本,所以从一开始就没有打算做的太复杂。在功能上,优先考虑用户浏览的便利性。界面设计上,使用灰色和黑色作为主色调,与 web 版保持一致。排版布局参照了 v2ex-swift 版
有两种方式可以实现。
第一种直接调用 V2EX 现有的 API,请求速度快,但是现有的接口并不完整,只提供了最基本的查看功能。
所以我们选择了第二种,模拟请求 V2EX 手机站点,并使用 cheerio 分析网页元素转换为 json,最后在小程序上渲染。数据是都有了,但是牺牲了速度。从请求到分析到 setData 再到页面呈现,整体的速度比直接请求接口慢了 3 倍多。所以下一个版本打算将 API 和模拟请求进行结合。先请求接口进行页面呈现,然后再分析页面元素,将接口里面缺少的部分提取出来,两者进行组合,减少用户的等待时间。
cheerio.js
request.js
towxml
搜索接口由 soV2EX 提供
下一版将着重用户体验优化,减少页面加载时间,提升界面的交互体验。此外,还会增加签到、发帖、点赞、收藏等功能。
目前已知部分安卓用户在使用是会请求不到数据的情况 iPhoneX 查看详情页时,底部的回复框没有做适配
这一版是直接使用原生组件开发的,很多功能都没来得及封装,重复代码较多,就不放出来献丑了。
接下来我会使用 Taro 将它重构一遍,最晚在 5 月底开源。







|      1rykka      2019-04-17 20:07:56 +08:00 via iPhone  1 可以啊,老弟 | 
|  |      3nanaw      2019-04-17 20:10:28 +08:00 via Android  11 是 app 不好用了还是浏览器打不开了?谁会去专门微信里面看。 微信在本站风评如何,不用多说了 8 | 
|  |      4jokyme OP @nanaw emmm... 开发这个小程序的初衷并不是让用户专门为了浏览 V2EX 而去玩微信,实际上用户也不会这么做。目标群体是重度使用微信,但是闲时会刷一刷 V2EX 的用户。不用在 App(或浏览器)和微信之间来回切换 | 
|  |      5caqiko      2019-04-17 20:18:23 +08:00 via iPhone  1 在用了!很不错哦 | 
|  |      6zdb1115      2019-04-17 20:27:57 +08:00  1 厉害了 老兄! | 
|  |      7huai      2019-04-17 20:36:27 +08:00  1 骨架图这块是如何做的。有工具? | 
|  |      8zhou00      2019-04-17 20:37:10 +08:00 via iPhone  1 支持下楼主,用了下,蛮舒服的。可以再加上两点功能,点击头像进详情,艾特后面的用户点击弹出引用内容。另外,安卓打字怎么换行~ | 
|      9loli      2019-04-17 20:41:01 +08:00  1 在用 v2er,唯一吸引我的一点就是点击 @会列出这个人在该主题的所有的回复,其他的各种的第三方都没这个。 这是个很小众的需求吗?大家看 @是怎么理解上下文的? | 
|  |      12mornlight      2019-04-17 20:51:12 +08:00 via iPhone  1 不错。有些细节还能再改进:节点页有时候一片白;搜索结果页最底下还是有那个「没有找到任何」的提示;回复框不能换行。欢迎楼主使用 SOV2EX 的 api😬 | 
|  |      13mornlight      2019-04-17 20:52:01 +08:00 via iPhone  1 回复成功之后框里的内容还在…… | 
|  |      15devjoe      2019-04-17 20:53:08 +08:00 via iPhone  1 Logo 都不换下吗 😂 | 
|      16testsec      2019-04-17 20:53:48 +08:00 via iPhone  1 用过一 V2EX plus | 
|      17SuperMia666      2019-04-17 20:58:29 +08:00  1 在用 V2EX plus 回复😄👍支持一下,你的字体有点晕🌫️ | 
|  |      18jokyme OP | 
|      19bccoder      2019-04-17 21:03:44 +08:00 via Android  2 万人血书取消字体阴影 | 
|  |      20jokyme OP @SuperMia666 有加了一点阴影 | 
|  |      22HarveyZh      2019-04-17 21:17:29 +08:00 via Android  1 回复楼层能在当前楼层里面吗?  看到别人回复一个问题 ,我还要向上翻 看问题是啥。 | 
|      24maxlino      2019-04-17 21:19:48 +08:00 via iPhone  1 好像“千呼万唤始出来”才对吧? | 
|      26runningman      2019-04-17 21:29:30 +08:00 via iPhone  1 开源吧 会小程序的哥们都可以更新 | 
|  |      27devjoe      2019-04-17 21:32:23 +08:00 via iPhone  1 我是 V2er 的作者,上面回复被你忽视了,为了不必要的麻烦,还请把 Logo 换了,谢谢。 | 
|  |      28wedoub      2019-04-17 21:40:09 +08:00 via iPhone  1 不错不错,支持一波 | 
|  |      29simon6661      2019-04-17 21:46:03 +08:00 via iPhone  1 佩奇呢 | 
|  |      32willku      2019-04-17 22:07:30 +08:00 via iPhone  1 666 | 
|      33WenjieYe      2019-04-17 22:09:37 +08:00  1 支持一波 | 
|      34ifaii      2019-04-17 22:09:55 +08:00  1 又可以摸鱼了 | 
|  |      35azhi      2019-04-17 22:19:34 +08:00  2 我是 V2EX Plus 的作者,哈哈来啦老弟,可以交流交流 | 
|  |      37azhi      2019-04-17 22:35:17 +08:00  1 我是小程序啊老哥,没投放广告啊 | 
|      41gneplove      2019-04-18 09:57:24 +08:00  1 最后一个页面的全屏是怎么做的啊,貌似小程序只能配置所有页面全屏,不能单独配置某一个页面全屏呀? | 
|      42slogon      2019-04-18 10:49:00 +08:00  1 咋看不到小程序码了? | 
|  |      43dabaibai      2019-04-18 11:35:42 +08:00  1 不喜欢微信小程序  略了. 微信做了不该做的事情 | 
|      44w4mxl      2019-04-18 16:53:22 +08:00  1 做的不错哦,支持一下。😄 一些小细节给您反馈一下: - 话题详情页的骨架感觉有点乱呢; - 搜索 Tab 的 logo 和小程序的 logo 保持一致统一感好点; - 节点 Tab 我第一次时没加载出来; - 我的 Tab 如果没登录[登出]按钮感觉还是隐藏了好点 | 
|  |      48jokyme OP @w4mxl 提的几点建议都不错, 下一版的骨架屏打算用工具生成。 个人中心的页面在下个版本会加入很多功能,所以,也会改的。 观察的很仔细,tab 的 logo 是随手在 iconfont 找的,Logo 是另外画的,可以考虑改成一致。 节点加载不出来的问题好像蛮多人反馈的,已经改完了,明天发布。 | 
|  |      49sangmong      2019-04-18 20:38:49 +08:00  1 iPad 上首页导航栏显示不出来 | 
|  |      50goodjojo      2019-04-18 21:22:29 +08:00 via iPhone  1 支持一波! | 
|  |      51alan0liang      2019-04-18 21:28:22 +08:00 via Android  1 支持下 顺便说一句 千呼万唤“始”出来 (我刚背 马上要期中考试了 | 
|  |      52SingeeKing PRO  1 不知道确切但按照我之前的经验猜测一下 bug 产生的原因 1. HTTPS 证书链有问题或协议版本(支持得太低和太高都不行) 2. 可以添加一个底部 margin/padding 值先设置为 0 再设置为 env(safe-area-inset-top)、constant(safe-area-inset-top),也就是需要写三行来保证适配 | 
|  |      53hljjhb      2019-04-19 00:29:39 +08:00 via Android  1 体验意外地好 | 
|  |      54jokyme OP @sangmong iPad 在模拟请求时会访问 PC 网站,现在只对手机端的做了适配。平板的适配已经提上日程,但是放在相对靠后的位置。排版布局在 iPad 上也要重新设计,否则体验很差。 | 
|  |      55jokyme OP @SingeeKing 小程序不支持 env(safe-area-inset-top)、constant(safe-area-inset-top) 这两个属性。昨天改了一个版本,检测用户设备是否是 iPhoneX,然后设置 bottom | 
|  |      57huixun      2019-04-19 01:12:55 +08:00 via iPhone  1 为什么要非官方,直接对接成官方不好么 | 
|  |      60sometimehappy      2019-04-19 10:13:15 +08:00  1 这... | 
|  |      61SingeeKing PRO  1 @jokyme #55 我实测是支持的…… | 
|  |      62cccicl      2019-04-19 14:42:31 +08:00  1 可以,支持 | 
|  |      64jokyme OP @w4mxl 之前看过一篇用 vue-skeleton-webpack-plugin 生成骨架屏的文章,但是没有去实践。 | 
|  |      65jokyme OP @SingeeKing 0.0 我等下加上在真机上试一试 | 
|  |      66forson      2019-04-22 21:23:17 +08:00 via iPhone 有个小 bug,左右滑动页面切换 tab 是,会出现错位,tab 和内容不一致,例如 tab 显示的交易,内容是酷工作的内容 | 
|  |      67cccicl      2019-06-14 09:26:13 +08:00 图没了 | 
|  |      69sunny2580839896      2019-06-14 14:03:35 +08:00 看到微信两个字就头疼,该*的微信还不倒闭 | 
|      70slogon      2019-06-14 14:04:24 +08:00 为啥我看不到图?。。。 | 
|  |      71unco020511      2019-06-14 14:15:20 +08:00 只有我看不到图吗 | 
|      72hyserendipity      2019-06-15 21:06:56 +08:00 via iPhone v 站网页版体验很好,所以小程序可以但没必要。 | 
|  |      73luckyx      2019-06-16 13:30:47 +08:00 回来看看代码 | 
|  |      74qqq8724      2019-07-29 09:16:36 +08:00 老哥 迁移之后的 V2EX CLUB 登录不上是怎么回事 | 
|  |      75fazero      2019-08-07 12:46:25 +08:00 开源地址在哪 |