微信小程式WXS特徵及適用場景
- 2019 年 11 月 6 日
- 筆記
記一下小程式的wxs相關
WXS(WeiXin Script)是微信創造的一套腳本語言,它的官方說法是:「WXS 與 JavaScript 是不同的語言,有自己的語法,並不和 JavaScript 一致」。
WXS具備如下特徵:
- 是可以在視圖層(webview)中運行的 JS
- 無法修改業務數據,僅能設置當前組件的class和style
- 是被限制過的 JavaScript,可以進行一些簡單的邏輯運算
- 可以監聽 touch 事件,處理滾動、拖動交互
適用場景:
- 用戶交互頻繁、僅需改動組件樣式(比如布局位置),無需改動數據內容的場景,比如側滑菜單、索引列表、滾動漸變等
- 純粹的邏輯計算,比如文本、日期格式化,通過 WXS 可以模擬實現 Vue 框架的過濾器, 如下是一個通過 wxs 便捷實現首字母大寫的示例
html <wxs module="m1"> // 首字母大寫 var capitalize = function(value) { if (!value) return '' value = value.toString() return value.charAt(0).toUpperCase() + value.slice(1) } module.exports = { capitalize: capitalize } </wxs> <view class="content"> <view class="text-area"> <!-- title 為當前頁面 data 中定義的初始數據 --> <text class="title">{{m1.capitalize(title)}}</text> </view> </view>