W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
推薦使用功能更全的 SJS 功能。Filter 功能將不再更新,請勿在s-if、s-for、template、自定義組件等標簽中使用。Filter 是小程序的過濾器,結(jié)合 SWAN 模板,可以構(gòu)建出頁面的結(jié)構(gòu)。
filter 代碼有兩種編寫方式:
標簽可以是雙閉合 <filter></filter> 或者單閉合 <filter/>,帶有 src 屬性的標簽,過濾器代碼要寫到相應(yīng)的文件里,不帶有 src 屬性的標簽,過濾器代碼寫在標簽內(nèi)。
屬性名 | 類型 | 說明 |
---|---|---|
src | String | 引用 .filter.js 文件的相對路徑 |
module | String | 當(dāng)前<filter></filter> 標簽的模塊名,必填字段 |
filter 邏輯代碼使用export default的形式導(dǎo)出封裝的一系列方法。代碼示例
export default {
Foo: () => {
return 'swan-foo-filter';
},
Bar: () => {
return 'swan-bar-filter';
}
}
代碼示例 1
<!-- swan -->
<view> {{swan.message()}} </view>
<filter module="swan">
export default {
message: function() {
return 'Hello world';
}
}
</filter>
頁面輸出:
Hello world
代碼示例 2
在開發(fā)者工具中打開// index.js
Page({
data: {
array: [1, 3, 6, 8, 2, 0]
}
});
// index.filter.js
export default {
maxin: arr => {
var max = undefined;
for (var i = 0; i < arr.length; ++i) {
max = max === undefined ?
arr[i] :
(max >= arr[i] ? max : arr[i]);
}
return max;
}
};
<!-- swan模板 -->
<view>{{swan.maxin(array)}}</view>
<filter src="./index.filter.js" module="swan"></filter>
頁面輸出:
8
Filter 的注釋與 swan 模板文件的注釋方式相同。
代碼示例
<!-- <filter module="swan">
function Foo() {
return 'programer';
}
export default {
test: Foo
};
</filter> -->
Filter 支持 javascript 所有運算符、語句、數(shù)據(jù)類型和基礎(chǔ)類庫。
Q:filter 是否支持三目運算
A:不支持。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: