微信小程序使用wxs(小程序的一套脚本语言)

  • A+
所属分类:Web前端
摘要

1.WXS 不依赖于运行时的基础库版本,可以在所有版本的小程序中运行。2.WXS 与 JavaScript 是不同的语言,有自己的语法,并不和 JavaScript 一致。


微信小程序使用wxs(小程序的一套脚本语言)

1.WXS 不依赖于运行时的基础库版本,可以在所有版本的小程序中运行。

2.WXS 与 JavaScript 是不同的语言,有自己的语法,并不和 JavaScript 一致。

3.WXS 的运行环境和其他 JavaScript 代码是隔离的,WXS 中不能调用其他 JavaScript 文件中定义的函数,也不能调用小程序提供的API。

4.WXS 函数不能作为组件的事件回调。

5.由于运行环境的差异,在 iOS 设备上小程序内的 WXS 会比 JavaScript 代码快 2 ~ 20 倍。在 android 设备上二者运行效率无差异。

基本使用

<!--wxml--> <wxs module="m1"> var msg = "hello world";  module.exports.message = msg; </wxs>  <view> {{m1.message}} </view>

个人感觉更多的用处更偏向于vue当中的过滤器

一般用作于处理页面上循环展示的数据 比如处理时间戳

// date.wxs  function Time(times) { 	// eslint-disable-next-line 	var date = getDate(times) 	var hour = date.getHours() 	var minute = date.getMinutes() 	var second = date.getSeconds() 	   	var time = [hour,minute,second].map(formatNumber).join(':') 	   	return time  } 	 function Date(times) {   // eslint-disable-next-line 	var date = getDate(times) 	var year = date.getFullYear() 	var month = date.getMonth() + 1 	var day = date.getDate() 	   	var dates = [year,month,day].map(formatNumber).join('-') 	   	return dates  }    module.exports = { 	Time: Time, 	Date: Date, }    // index.wxml <wxs src="./date.wxs" module="date" />  <view>格式化日期:{{date.Date(Time)}}</view> <view>格式化时间:{{date.Time(Time)}}</view>