欧美三级国产三级日韩三级_亚洲熟妇丰满大屁股熟妇_欧美亚洲成人一区二区三区_国产精品久久久久久模特

一斤代碼解讀--小程序視圖層處理增強(qiáng)之WXS - 新聞資訊 - 云南小程序開發(fā)|云南軟件開發(fā)|云南網(wǎng)站建設(shè)-昆明葵宇信息科技有限公司

159-8711-8523

云南網(wǎng)建設(shè)/小程序開發(fā)/軟件開發(fā)

知識

不管是網(wǎng)站,軟件還是小程序,都要直接或間接能為您產(chǎn)生價值,我們在追求其視覺表現(xiàn)的同時,更側(cè)重于功能的便捷,營銷的便利,運(yùn)營的高效,讓網(wǎng)站成為營銷工具,讓軟件能切實提升企業(yè)內(nèi)部管理水平和效率。優(yōu)秀的程序為后期升級提供便捷的支持!

您當(dāng)前位置>首頁 » 新聞資訊 » 小程序相關(guān) >

一斤代碼解讀--小程序視圖層處理增強(qiáng)之WXS

發(fā)表時間:2021-5-11

發(fā)布人:葵宇科技

瀏覽次數(shù):77

隨著微信開發(fā)者工具v1.0.0的釋出,beta已久的微信小程序視圖層的新功能特性WXS(WeiXin Script),也正式到來了。

熟悉微信小程序開發(fā)框架的開發(fā)者,肯定會對其視圖層WXML中缺失的一個功能耿耿于懷,那就是沒有辦法在視圖層對數(shù)據(jù)進(jìn)行格式化處理。比如我們從后端獲取到一個包含了時間戳數(shù)據(jù)的數(shù)組,然后需要在界面上把這些日期都格式化顯示為2017-01-01這種格式的日期形式,在Vue, Angular之類的前端Web框架中,一般在視圖層都提供了如filter之類相應(yīng)比較好用的方案。

而在現(xiàn)有的微信小程序代碼中?你能怎么做?估計我們的做法要么是在Page代碼中遍歷一次數(shù)組,做一下格式化;要么,只能讓后端返回已經(jīng)格式化好的數(shù)據(jù)了。

對于追求程序代碼優(yōu)雅的程序員來說,這簡直就是心中一個巨大的疙瘩!微信小程序團(tuán)隊估計沒少受這方面的吐槽。因此,這次WXS的推出算是滿足了對這種需求的渴望吧。

WXS算是專供WXML調(diào)用的有獨立作用域的JS模塊(不是全功能的JS,感覺有所限制)。舉個例子,在這之前,我們是沒有辦法在WXML的數(shù)據(jù)綁定括號{{}}中調(diào)用JS函數(shù)的,所以在WXML層面就缺少了進(jìn)一步做數(shù)據(jù)處理的能力。

下列代碼是不工作的:

 
  1. <!-- wxml文件 -->
  2. <view>{{testFunc(name)}}</view>
  3.  
  4. // some-page.js
  5. Page({
  6. data: {
  7. name: "一斤代碼"
  8. },
  9.  
  10. testFunc: function (name) {
  11. return "Hello," + name
  12. }
  13. })

而有了WXS之后,我們就可以實現(xiàn)我們預(yù)期的功能了:

 
  1. <!-- wxml文件 -->
  2. <view>{{myModule.testFunc(name)}}</view>
  3.  
  4. <wxs module="myModule">
  5. function testFunc(name) {
  6. return "Hello," + name
  7. }
  8. module.exports.testFunc = testFunc
  9. </wxs>
  10.  
  11. // some-page.js
  12. Page({
  13. data: {
  14. name: "一斤代碼"
  15. }
  16. })

WXS可以直接定義在wxml文件的標(biāo)簽體中,也可以寫在獨立的.wxs后綴名的文件中,然后在wxml文件中通過的形式引入。

如要要在WXS代碼中去引用其他獨立.wxs文件,可以通過 require()函數(shù)來引入,基本上都是我們熟悉的方式:

 
  1. var formatUtil = require("./format-util.wxs");
  2. var now = getDate()
  3.  
  4. formatUtil.formatDate(now)

所以,WXS在功能方面,并沒有什么復(fù)雜的東西,唯一需要特別注意一些的,就是它的作用域了:

模塊只能在定義模塊的 WXML 文件中被訪問到。使用 或 時, 模塊不會被引入到對應(yīng)的 WXML 文件中。

標(biāo)簽中,只能使用定義該 的 WXML 文件中定義的 模塊。

趕緊去試試吧,看看你現(xiàn)有的代碼是不是有可以借助WXS來優(yōu)化重構(gòu)一下的地方。

相關(guān)案例查看更多