【已完成】【新端扩展】快应用共建计划
beatles-chameleon opened this issue · comments
beatles-chameleon commented
更新已支持快应用:
https://cml.js.org/doc/example/quickapp_miniapp.html
CML的跨端标准协议
Chameleon 规范了一套跨端标准,称之为MVVM+协议;开发者只需要按照标准扩展流程,即可快速扩展任意MVVM架构模式的新端。并让已有项目无缝运行新端。
目标
按照新端扩展标准支持快应用
参与方
快应用官方研发团队
lucida commented
Chameleon扩展快应用排期
目标
按照新端扩展标准支持cml转换快应用
参与方
滴滴CML团队、快应用联盟
具体工作拆分和排期
具体工作拆分和排期
- cml-quickapp-api的工作是独立的 不依赖其他npm包的开发
- cml-quickapp-runtime 运行时的工作也是独立的 不依赖其他npm包
- cml-quickapp-plugin中的模板编译 在事件绑定的代理函数中依赖runtime 其他的工作不依赖
- cml-quickapp-ui-builtin和 cml-quickapp-ui依赖cml-quickapp-runtime和cml-quickapp-plugin的完成 才能正确执行。
- cml-quickapp-store的工作也是独立的,基本上小程序端实现是相同的。
工作 | 总体工作量 | 排期 | 负责人 | 进度 | 需要单测 | 备注 |
---|---|---|---|---|---|---|
cml-quickapp-api | 7天 | 5/30启动 | 陈磊 | 除个例API【如setPageTitle】依赖快应用运行时全局环境,以及需要转换为快应用支持的异步调用方式【如cpx2px、px2cpx】,其余都已经实现 | 是 | 31个chameleon的api方法对应快应用 10个类别45个模块[每个模块有多个方法]每天5个模块 |
cml-quickapp-runtime | 12天 | 6/12启动 | 陈磊 | Runtime如期启动,进展却一路坎坷,截止目前已完成生命周期转换、options\props\methods\data处理,接近完成 | 是 | 参照chameleon-runtime,然后进行相应前端的改动。 |
cml-quickapp-plugin | 5天 | 7/1启动 | 陈磊 | 已启动,是对之前编译转换的进一步完善和补充,对细节语法层面做细致的转化 | 是 | 已打通事件调用 |
cml-quickapp-ui-builtin | 7天 | 7/6启动 | 陈磊 | 已开展 | 否 | 11个多态组件,其他的组件不是多态可以直接测试 需要依赖编译和运行时完成 但也可以提前写好后测试 |
cml-quickapp-ui | 5天 | 7/13启动 | 陈磊 | 已调研 | 否 | 3个多态组件,其他的组件不是多态可以直接测试 需要依赖编译和运行时完成 但也可以提前写好后测试 |
cml-quickapp-store | 3天 | 7/18启动 | 陈磊 | 未开展 | 是 | 参考chameleon-store |
联调测试 | 4天 | 7/21启动 | 陈磊 | 未启动 | 各部分开发完成后进行联调测试 |
cml-quickapp-api
工作 | 工作量 | 排期 | 负责人 | 进度 | 备注 |
---|---|---|---|---|---|
alert方法实现与测试demo | 导入快应用的feature,实现对应方法 | 5/30 | 陈磊 | 已启动 | |
canIUse方法实现与测试demo | 5/30 | ||||
cancelAnimationFrame方法实现与测试demo | 5/30 | ||||
chooseImage方法实现与测试demo | 5/30 | ||||
close方法实现与测试demo | 5/30 | ||||
confirm方法实现与测试demo | 5/31 | ||||
cpx2px方法实现与测试demo | 5/31 | ||||
createAnimation方法实现与测试demo | 5/31 | ||||
get方法实现与测试demo | 5/31 | ||||
getClipBoardData方法实现与测试demo | 5/31 | ||||
getLaunchOptionsSync方法实现与测试demo | 5/31 | ||||
getLocationInfo方法实现与测试demo | 6/3 | ||||
getRect方法实现与测试demo | 6/3 | ||||
getStorage方法实现与测试demo | 6/3 | ||||
getSystemInfo方法实现与测试demo | 6/3 | ||||
inSDK方法实现与测试demo | 6/3 | ||||
initSocket方法实现与测试demo | 6/4 | ||||
navigateBack方法实现与测试demo | 6/4 | ||||
navigateTo方法实现与测试demo | 6/4 | ||||
open方法实现与测试demo | 6/4 | ||||
post方法实现与测试demo | 6/4 | ||||
px2cpx方法实现与测试demo | 6/5 | ||||
redirecquickappo方法实现与测试demo | 6/5 | ||||
reload方法实现与测试demo | 6/5 | ||||
removeStorage方法实现与测试demo | 6/5 | ||||
request方法实现与测试demo | 6/5 | ||||
requestAnimationFrame方法实现与测试demo | 6/6 | ||||
setClipBoardData方法实现与测试demo | 6/6 | ||||
setStorage方法实现与测试demo | 6/6 | ||||
sequickappitle方法实现与测试demo | 6/6 | ||||
showToast方法实现与测试demo | 6/6 |
cml-quickapp-runtime
工作 | 工作量 | 排期 | 负责人 | 进度 | 备注 |
---|---|---|---|---|---|
生命周期映射 | 适配从cml到快应用的生命周期函数映射关系,包括app、page、component各个的生命周期 | 6/12 ~ 7/1 | 李恒、陈磊 | 基本实现,待验证 | |
适配options | 6/12 ~ 7/1 | 未启动 | |||
处理props | 6/12 ~ 7/1 | 未启动 | |||
处理data | 6/12 ~ 7/1 | 未启动 | |||
处理mixins | 6/12 ~ 7/1 | ||||
处理钩子hooks | 6/12 ~ 7/1 | ||||
处理methods | 6/12 ~ 7/1 | ||||
能力注入(在最早生命周期hook,对执行上下文 this 改造) | |||||
处理 data【使具备响应式数据处理能力】 | 6/12 ~ 7/1 | ||||
处理 computed【使具备计算属性能力】 | 6/12 ~ 7/1 | ||||
处理 watch【使具备数据监听能力】 | 6/12 ~ 7/1 |
cml-quickapp-plugin
工作 | 工作量 | 排期 | 负责人 | 进度 | 备注 |
---|---|---|---|---|---|
基础模板编译 | 快应用目录结构和源文件生成 | 5/21 | 陈磊 | 初步实现模板编译和生成快应用目录结构以及源代码 | manifest.json、签名文件等还需要进一步工作 |
基本标签替换 | 7/1 | 李恒、陈磊 | view => div 如果需要的话,比如cell 替换成view slider-item替换成swiper-item | ||
c-if c-else c-else-if c-show c-for c-text c-key | 7/2 | ||||
component is 动态组件 | 7/3 | ||||
c-model | 7/3 | ||||
c-bind 事件绑定 配合运行时mixins代理事件与处理事件对象 | 1/7 ~ 7/5 | ||||
c-animation | 待定 | ||||
style与class处理 | 7/4 ~ 7/5 |
cml-quickapp-ui-builtin
工作 | 工作量 | 排期 | 负责人 | 进度 | 备注 |
---|---|---|---|---|---|
checkbox/radio/layout文件夹下的7个布局 组件实现与测试demo | 7/6 ~ 7/7 | 李恒、陈磊 | 未启动 | ||
button 组件实现与测试demo | 7/6 ~ 7/8 | ||||
carousel 组件实现与测试demo | 7/6 ~ 7/8 | ||||
carousel-item 组件实现与测试demo | 7/6 ~ 7/8 | ||||
input 组件实现与测试demo | 7/9 ~ 7/10 | ||||
list 组件实现与测试demo | 7/9 ~ 7/10 | ||||
page 组件实现与测试demo | 7/10 ~ 7/11 | ||||
richtext 组件实现与测试demo | 7/10 ~ 7/11 | ||||
scroller 组件实现与测试demo | 7/11 ~ 7/12 | ||||
switch 组件实现与测试demo | 7/11 ~ 7/12 | ||||
textarea 组件实现与测试demo | 7/11 ~ 7/12 | ||||
video 组件实现与测试demo | 7/12 ~ 7/13 |
cml-quickapp-ui
工作 | 工作量 | 排期 | 负责人 | 进度 | 备注 |
---|---|---|---|---|---|
c-picker-item 组件实现与测试demo | 7/13 ~ 7/18 | 李恒、陈磊 | 未启动 | ||
c-refresh 组件实现与测试demo | |||||
c-actionsheet, c-checkbox-group, c-dialog, c-loading, c-picker, c-picker-panel, c-popup, c-radio-group, c-tab, c-tab-item, c-tab-pane, c-tab-pane-item, c-tabbar, c-tip, c-toast 组件实现与测试demo |
cml-quickapp-store
工作 | 工作量 | 排期 | 负责人 | 进度 | 备注 |
---|---|---|---|---|---|
createStore | 7/18 ~ 7/22 | 李恒、陈磊 | 计划中 | 快应用目前以本地storage为主,未使用到redux、mobx等状态管理lib | |
commit | |||||
dispatch | |||||
mapState | |||||
mapGequickappers | |||||
mapMutations | |||||
mapActions | |||||
registerModule |
dreamHeroK commented
关注中,怎么没后续了。
DeepKolos commented
好专业的排期
tianfer commented
先帝创业未半而中道崩殂,没有后续了?
lucida commented
后续计划是有的
| |
陈磊
|
|
zheyizhifeng@126.com
|
签名由网易邮箱大师定制
在2019年12月18日 16:45,tianfer<notifications@github.com> 写道:
先帝创业未半而中道崩殂,没有后续了?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or unsubscribe.
五柳 commented
不应该 closed 吧,问题很多....