微信小程序 WXS
2016-11-23
導(dǎo)讀:WXS WXS(WeiXin Script)是小程序的一套腳本語(yǔ)言,結(jié)合WXML,可以構(gòu)建出頁(yè)面的結(jié)構(gòu)。 注意: wxs 不依賴于運(yùn)行時(shí)的基礎(chǔ)庫(kù)版本,可以在所有版本的小程序中運(yùn)行。 wxs 與 javascript 是不同的語(yǔ)...
WXS
WXS(WeiXin Script)是小程序的一套腳本語(yǔ)言,結(jié)合 WXML,可以構(gòu)建出頁(yè)面的結(jié)構(gòu)。
注意:
- wxs 不依賴于運(yùn)行時(shí)的基礎(chǔ)庫(kù)版本,可以在所有版本的小程序中運(yùn)行。
- wxs 與 javascript 是不同的語(yǔ)言,有自己的語(yǔ)法,并不和 javascript 一致。
- wxs 的運(yùn)行環(huán)境和其他 javascript 代碼是隔離的,wxs 中不能調(diào)用其他 javascript 文件中定義的函數(shù),也不能調(diào)用小程序提供的API。
- wxs 函數(shù)不能作為組件的事件回調(diào)。
- 由于運(yùn)行環(huán)境的差異,在 iOS 設(shè)備上小程序內(nèi)的 wxs 會(huì)比 javascript 代碼快 2 ~ 20 倍。在 android 設(shè)備上二者運(yùn)行效率無(wú)差異。
以下是一些使用 WXS 的簡(jiǎn)單示例:
頁(yè)面渲染
<!--wxml-->
<wxs module="m1">
var msg = "hello world";
module.exports.message = msg;
</wxs>
<view> {{m1.message}} </view>
頁(yè)面輸出:
hello world
數(shù)據(jù)處理
// page.js
Page({
data: {
array: [1, 2, 3, 4, 5, 1, 2, 3, 4]
}
})
<!--wxml-->
<!-- 下面的 getMax 函數(shù),接受一個(gè)數(shù)組,且返回?cái)?shù)組中最大的元素的值 -->
<wxs module="m1">
var getMax = function(array) {
var max = undefined;
for (var i = 0; i < array.length; ++i) {
max = max === undefined ?
array[i] :
(max >= array[i] ? max : array[i]);
}
return max;
}
module.exports.getMax = getMax;
</wxs>
<!-- 調(diào)用 wxs 里面的 getMax 函數(shù),參數(shù)為 page.js 里面的 array -->
<view> {{m1.getMax(array)}} </view>
頁(yè)面輸出:
5
第二部分:如何開通一個(gè)小商店