微信小程式在模板語法中使用indexOf無效問題解決
- 一、全域:通過wxs檔案擴展
- 二、區域:
- 總結
想要在小程式的wxml檔案中使用indexOf作為判斷條件,會發現indexOf陳述句無效,這是由于小程式的mastache語法不支持js的方法,(https://blog.csdn.net/qq_34568700/article/details/111043327)
可以通過wxs微信小程式腳本語言來結合js語法構建頁面結構,
一、全域:通過wxs檔案擴展
新建一個wxs檔案:
// 擴展支持split和encodeUrl方法
var filter = {
split: function(value,prefix=","){
return value.split(prefix)
},
encodeUrl: function(url){
return encodeURIComponent(url)
}
}
// 匯出對外暴露的屬性
module.exports = {
split: filter.split,
encodeUrl : filter.encodeUrl
}
在wxml模板中引入:
<wxs module="filter" src="../../../utils/util.wxs"></wxs>
在模板中使用:
<navigator url="/web_view?url={{filter.encodeUrl(url)}}"></navigator>
二、區域:
在模板中使用wxs標簽,標簽里面定義indexOf語法:
<wxs module="tool">
function indexOf(array, value) {
return array.indexOf(value)
}
module.exports.indexOf = indexOf;
</wxs>
在模板中直接使用:
<view class="{{tool.indexOf(item,item1)>-1?'select':''}}" bindtap="XXX">
<text>{{item1}}</text>
</view>
總結
對于其他像Object.keys() 、toString()、indexOf()等js方法,同樣可以通過上述兩種方法在微信小程式模板中使用,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/260602.html
標籤:其他
上一篇:垂直居中(總結)
