Skip to content

charlescui/weex-baji

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

电视直播节目单

编译说明

  • 下载WEEX项目
  • COPY到 WEEXexamples目录
  • 在examples目录的 index.we文件中, 添加如下内容{name: 'Baji/index', title: '吧唧'},data.items

使用说明

  1. 频道列表
    1. 当前APP支持哪些频道信息
  2. 正在直播
    1. 当前时间各个频道正在直播的节目信息,以及该频道最新视频截图
  3. 今日节目 3. 当前频道今天的直播节目清单

APP截图

频道/正在直播/今日节目的演示截图

关于Weex

之前我一直在关注ReactiveNative的开发,机缘巧合,四月份我同事跟我提起阿里做了一个Weex,不久要开源了,我就一直持续关注至今。

真正动手用起来是在6月底,也就是Weex开源前的那一周,加入了开发者聊天群,申请了github仓库的权限,于是第一次看到了Weex的项目代码,很兴奋的跃跃欲试。

先是看文档,当时官方有两套文档:

一边看文档了解weex文件结构,了解各种组件,了解页面加载机制,以及很重要的内置的几个Module。 一边用项目提供的exampleWeexOne。 一边在交流群里请教问题和回答问题。

通过不断的修改Example来验证自己对Weex的理解,也得益于Weex框架友好的代码结构设计,一两天时间就可以把Example里面介绍的大多数用法掌握。

这个例子我陆陆续续花了4天时间完成,因为平时工作任务很重,每天少许时间调研Weex,真正投入到该例子开发中的时间应该是1.5人日。开发效率高,代码结构清晰,部署方便,支持丰富的JS库引入,语法层面用的都是熟悉的知识,这的确是Weex非常值得表扬的地方。

做完这个例子后,我在公司内部做了一次分享,跟研发有关的各种岗位的同学都参加了,大家几乎都是第一次看到Weex。但在分享过程中,每讲到一处,大家都有一种恍然领悟的感觉,仿佛在表达:“哦对,我也觉得该这么写”。一路讲下来,水到渠成,大家没有任何陌生感。平时在用ReactiveNative的同学对两者做了对比,认为还是Weex上手更快,比RN更贴近我们熟悉的前端开发。

对Weex熟悉的越多,我在工程上的思考也就越多,我认为有了Weex后,移动端团队的结构可以按这种方式组建:

  • 原岗位的Android和iOS同学
    • 继续原生代码编程,负责Native底层的桥接工作,给UI组件提供底层能力支持。
      • Android和iOS的生态环境已经非常完善,我们已经在用的各种服务和SDK不能丢弃,这些Native代码需要桥接到UI组件
  • 前端同学
    • 使用Weex按照熟悉的HTML\JS\CSS继续实现UI层

这样的话前端同学就成了真正意义上的大前端,主攻交互,往体验、往实现细节上深造。

Weex目前也有很多不足不成熟的地方,短时间内还不敢用于正式项目。我在开发过程中遇到很多问题,有BUG,也有功能缺失,举几个我觉得比较重要的功能相关的例子:

  • 还没有好的调试工具
  • iOS的Pod还不支持
  • 页面切换方式不丰富,比如还没有一个页面从下到上出现的效果,就是iOS的presentViewController方法。
  • 没有考虑到Android盒子的适配,包括:
    • 遥控器按上下左右的时候,需要有光标移动效果和组件获取光标焦点支持。

这些问题我已反馈给Weex维护团队,相信随着时间的推移,问题会越来越少,体验越来越好。

总体来说,Weex的出现让我很兴奋,它设计的对工程师非常友善。相信会有很多人来一起壮大Weex社群,也期望阿里集团能给Weex团队更多的支持,让他们更专注的把Weex做好,让业界乃至世界刮目相看。


我写的这个例子叫:"电视直播节目单",原名叫"吧唧",取自我之前做过的一个App:"吧唧TV".

这个例子里使用了一个我做的直播流实时抽帧接口,该接口使用的云存储是按调用次数收费的,请大家不要爬取。如果真的需要可以联系我:cuizheng.hz#qq.com

About

WEEX版本的电视直播节目单APP

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published