苗疆三刀的随手记 2020-06-10
wxs 的作用就是减少在 wxml 页面上的语句,比如 wx:if 判断语句,如果过多的情况下就会造成 wxml 页面很乱,可读性不好,在 IOS 设备上小程序内的 wxs 会比 JavaScript 代码快 2-20 倍
在 wxs 文件中写一些方法,通过 module.exports 暴露出去,这样就可以被别的 wxs 文件或<wxs>标签引入
wxs 不依赖于运行时的基础库版本,可以在所有版本的小程序中运行。wxs 与 JavaScript 是不同的语言,有自己的语法,并不和 JavaScript 一致。wxs 的运行环境和其他 JavaScript 代码是隔离的,wxs 中不能调用其他 JavaScript 文件中定义的函数,也不能调用小程序提供的 API。wxs 函数不饿能作为组件的事件回调。IOS 设备上小程序内的 wxs 会比 JavaScript 代码快 2-20 倍,在 Android 设备上二者运行效率无差异<wxs src="wxs文件路径" module="方法名">require 引入:var tools = require(‘wxs文件相对路径‘)在 wxml 中使用 toFixed 方法
新建一个 filters.wxs
var filters = {
toFix: function (value, value1) {
if (typeof value == ‘undefined‘) {
return value
} else {
return value.toFixed(value1)
}
},
toStr: function (value) {
return value.toString()
},
toNum: function (value) {
return value.toNumber()
},
}
module.exports = {
toFix: filters.toFix,
toStr: filters.toStr,
toNum: filters.toNum, //暴露接口调用
}页面引入并使用
<wxs module="filters" src="../../utils/filter.wxs"></wxs>
<text class="ptfanxian">{{filters.toFix(test,2)}}</text> // test调用toFixed方法保留两位小数