騰訊開源微信小程序解決方案 Westore,并表示該方案能夠以 1KB JavaScript 覆蓋狀態(tài)管理、跨頁通訊、插件開發(fā)和云數(shù)據(jù)庫開發(fā)。
據(jù)介紹,Westore 的開發(fā)背景是因為小程序通過頁面或組件各自的 setData 再加上各種父子、祖孫、姐弟、姑姑與堂兄等等組件間的通訊會把程序搞成一團漿糊,如果再加上跨頁面之間的組件通訊,會讓程序非常難維護和調(diào)試。雖然市面上出現(xiàn)了許多技術棧編譯轉小程序的技術,但是沒有戳中小程序的痛點。
小程序不管從組件化、開發(fā)、調(diào)試、發(fā)布、灰度、回滾、上報、統(tǒng)計、監(jiān)控和最近的云能力都非常完善,小程序的工程化簡直就是前端的典范。而開發(fā)者工具也在持續(xù)更新,可以想象未來組件布局的話未必需要寫代碼了。而且據(jù)統(tǒng)計,開發(fā)小程序使用最多的技術棧是小程序本身的開發(fā)工具和語法,所以最大的痛點只剩下狀態(tài)管理和跨頁通訊。
于是 Westore 給出了自己的解決方案:
Westore 受 Omi 框架的啟發(fā),其特點與優(yōu)勢如下:
和 Omi 同樣簡潔的 Store API
超小的代碼尺寸(包括 json diff 共 100 多行)
尊重且順從小程序的設計(其他轉譯庫相當于反其道行)
增強 data 數(shù)據(jù)綁定,函數(shù)屬性可直接綁定到 WXML
this.update 兼容 setData 同樣的語法
this.update 比原生 setData 的性能更優(yōu),更加智能
Westore 專為小程序插件開發(fā)定制了模板
Westore 集成了騰訊云開發(fā)