|
作者:哲學李論,來自原文地址
具體是不是某寶的效果不管它,tab分類切換在許多業(yè)務場景中都能用到,不但可以在頂部滑動,稍修改一下,在底部滑動也可以。
作者是易小程,已將其代碼開源在:https://github.com/zhongjie-chen/wx-scrollable-tab-view
它是這樣實現(xiàn)的:
2,scroll-view上面是使用view自定義實現(xiàn)的tabbar,藍色的下劃線是css樣式控制的。 3,在scroll-view綁定touch事件
在js中計算滑動的距離,以此控制activeTab與藍色下劃線的offset。代碼不復雜,但如果親自實現(xiàn)并調試通過,即使是有經驗的老程序員也得花上一些時間。 作者沒有使用任何第三方類庫,是原生實現(xiàn),便于集成與復用。 在代碼中有這樣的代碼,值得講一下:
let關鍵字聲明的是什么鬼?為什么變量名用花括號括起來? 這是 ECMAScript6(es6)的新特性,叫做解構賦值,也可以叫做析構賦值,英文關鍵詞 destructuring assignment,是借鑒ruby和python的。 例如:
下面這行代碼,require返回一個object,使用解構賦值,可以只取出對應名字的屬性
等價于:
解構賦值的好處是可以只導出自己需要的,而且可以一次導出多個,避免了繁冗的var和賦值操作。 在es6中,左值不再只能有一個了。 與golang的多返回值類似,看來語言都會相互學習成長。 |