微信小程序WXS基础/模块

112 阅读2分钟

开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第4天,点击查看活动详情

昨晚复习了一下微信小程序中的wxs模块,wxs其实与js是有议席而不同的额,针对不同点我列出了一下几点,大家可以参考以下几点: WXS(WeiXin Script)是小程序的一套脚本语言,结合 WXML,可以构建出页面的结构。

注意事项(即wxs和js的区别)

  1. WXS 不依赖于运行时的基础库版本,可以在所有版本的小程序中运行。
  2. WXSJavaScript 是不同的语言,有自己的语法,并不和 JavaScript 一致。
  3. WXS 的运行环境和其他 JavaScript 代码是隔离的,WXS 中不能调用其他 JavaScript 文件中定义的函数,也不能调用小程序提供的API。
  4. WXS 函数不能作为组件的事件回调。但在2.4.4可以把wxs里的函数作为事件进行绑定
  5. 由于运行环境的差异,在 iOS 设备上小程序内的 WXS 会比 JavaScript 代码快 2 ~ 20 倍。在 android 设备上二者运行效率无差异。

WXS模块

module 对象

  • 每个 wxs 模块均有一个内置的 module 对象。
  • wxs对象导出的话,需要使用module.exports = {}

module对象的属性

  • exports: 通过该属性,可以对外共享本模块的私有变量与函数
  • wxs文件后缀名为.wxs,哪个文件想使用该文件里的数据,需要该文件module.exports导出,使用该文件的wxml文件需要通过` 具体使用,如下
//comm.wxs文件---->该文件直接在pages文件夹下,与home文件夹同级
var foo="你好";
var bar=function (b){
   return b
}

module.exports={
  foo,
  bar
}

//home.wxml文件
//tools就是接收wxs文件导出的对象
<wxs src="../../comm.wxs" module="tools"></wxs>  

<view>{{tools.foo}}</view>

使用wxs文件的两种方式

  • 外链式<wxs src="" module=""/>
  • 内嵌式<wxs module>wxs脚本,就是把wxs的代码搬到了这里,记得也要module.exports={}出去</wxs> 一个wxs文件导入另一个wxs文件,使用require('必须使用相对路径')方法,并且该方法只能引入wxs模块

require函数

.wxs模块中引用其他 wxs 文件模块,可以使用 require 函数。

引用的时候,要注意如下几点:

  • 只能引用 .wxs 文件模块,且必须使用相对路径。
  • wxs 模块均为单例,wxs 模块在第一次被引用时,会自动初始化为单例对象。多个页面,多个地方,多次引用,使用的都是同一个 wxs 模块对象。
  • 如果一个 wxs 模块在定义之后,一直没有被引用,则该模块不会被解析与运行。

以上就是我针对wxs文件做的一些复习总结,路过的小伙伴可以补充补充哦~~~