1.wxs相关介绍
     2.wxs标签内嵌在wxml中使用
     3.在.wxs文件中外联使用
     4.wxs与JavaScript区别

1.wxs相关介绍

wxs(weixin script),是小程序的一套脚本语言,结合 WXML,可以构建出页面的结构。可以编写在 wxml 文件中的 标签内,或以 .wxs 为后缀名的文件内.
主要作用相当于“过滤器”,是用于数据从逻辑层传递到页面层在渲染之前做额外处理.如何在视图层进行渲染之前对数据进行额外处理,两个案例进行说明.
    案例开始之前先说下 标签的两个属性:
    module用于指定模块名,保证模块名唯一。
    src用于指定.wxs文件与 标签所在wxml中所在相对路径地址,一般用于.wxs外联样式中使用.

2.wxs标签内嵌在wxml中使用

案例实现目的:将逻辑层定义的小写字符串在视图层渲染之前完成大写转化.
    index.js中创建msg信息:

Page({data:{msg: 'jinan'}})

index.wxml中创建wxs标签并定义字符串大写转化的函数:

<wxs module="strToUppperModule">module.exports.strToUppper=function(str){// 字符串大写处理return str.toUpperCase()}
</wxs>
<view>{{strToUppperModule.strToUppper(msg)}}
</view>

module.exports可以理解为将自定义的函数暴露出来供其他地方调用。
wxs中定义的函数调用方式:

wxs标签module名.自定义函数(参数)

页面展示结果:

3.在.wxs文件中外联使用

案例实现目的:将逻辑层的大写字符串在视图层渲染之前完成小写转化.
index.js中初始化msg值:

Page({data:{msg: 'JINAN'}})

index.wxs中自定义小写转化函数:

function strToLower(str){return str.toLowerCase()
}module.exports.strToLower=function(str){return str.toLowerCase()}

关于module.exports函数暴露也可以简化成如下:

function strToLower(str){return str.toLowerCase()
}
module.exports={// 字符串小写strToLower: strToLower
}

index.wxml中wxs标签使用src引入.wxs文件:

<wxs module="strToLowerModule" src="../index/index.wxs"></wxs>
<view>{{strToLowerModule.strToLower(msg)}}
</view>

页面展示结果如下:

4.wxs与JavaScript区别

看到有人总结过wxs的特点,感觉不错就在这里贴一下,如果侵权请联系删除:

另外wxs与javascript的区别如下:
    1.wxs与javascript是两种不同的语言,不过wxs沿用了大部分的js语法,学习成本不会太高。两种语言之间有隔离性,就是说不能从wxs中调用js中定义的函数。
    2.wxs不支持组件事件回调。上篇文件讲过点击事件触发之后从逻辑层可以获取到视图层传递的参数进行数据处理,但是wxs不支持。
    3.性能上来讲,对于iOS版本上运行的小程序,wxs运行速度是js的2-20倍,安卓版本上两个性能无明显差异。

uni-app入门:wxs基本使用相关推荐

  1. cordova打开文件_Cordova开发App入门(四)打开及下载第三方App

    前言 在开发app时经常会碰到这种需求:我要在A应用中打开B应用,那么用Cordova如何实现呢? 欲知后事如何,且听下回分解...... ... 大大大大佬,别,别打我,我继续写还不行了吗. 本文涉 ...

  2. 切换 uniapp_万能前端框架uni app初探03:底部导航开发

    前言 本节我们使用uni app的底部导航功能,点击不同tab会显示不同页面,这个功能在实际项目开发中几乎是必备的. 一.基础知识 1.tabBar 如果应用是一个多 tab 应用,可以通过 tabB ...

  3. uni app map 地图 漂浮问题及方案

    uni app map 地图 漂浮问题及方案 文章页有图片导致的问题,图片没加载出来,导致文章内容高度不固定,如果图片没加载出来,高度就是0,如果此时开始加载map,那么map就在那里加载,map原生 ...

  4. uni.app H5(微信公众号定位) uni.getLocation

    最近在开发公众号,由于之前经常使用uni,app写APP,索性就用uni.app来开发公众号了, 不过也遇到了一个问题,就是在公众号的首页要获取用户的定位.我看了看官网的API 有个uni.getLo ...

  5. HBuilder X ——Uni app 学习笔记(一)

    HBuilder X --Uni app 学习笔记(一) 1.pages.json配置 *pages数组中第一项表示应用启动页,数组中其他项为项目中所有页面路径. enablePullDownRefr ...

  6. uni app中使用图表

    关于在uni app中运用图表 今天写项目,需要在uni app中使用图表,我使用的是ucharts. 具体操作如下 1.下载 ucharts可以直接在uni app的插件市场下载安装. 先在插件市场 ...

  7. uni app 自动化索引列表

    uni app 自动化索引列表,官方推荐的第三方插件 https://ext.dcloud.net.cn/plugin?id=375 [{"letter": "A&quo ...

  8. HbuilderX:uni app踩坑之uView-ui

    HbuilderX:uni app踩坑之uView-ui 最近在自学uniapp,想找一个ui框架提高一下学习和开发的效率,于是就网上冲浪,浪来浪去,最后选择了uView-ui这款.其实有些框架我是有 ...

  9. uni App+H5 实现人脸识别

    uni App+H5 实现人脸识别 通过h5的视频video管理设备摄像头(不要关),在打开视频摄像时快照截取人脸照片传送到后台通过API接口调用百度人脸识别结果并通过返回数据解析自己业务需求. 1. ...

  10. uni app 视频播放功能

    视频播放功能,需求:编译成纯h5网页,运行在任意容器里,如浏览器.安卓原生和iOS等 媒体组件video 首先使用video组件,然后高度需要自己设置 uni.createVideoContext 官 ...

最新文章

  1. Struts2数据传输的背后机制:ValueStack(值栈)
  2. 制作U盘启动盘将Ubuntu 12.04升级为14.04的方法
  3. 闪屏,default
  4. centos7 搭建Docker Registry
  5. 面进了心心念念的国企!以为TM上岸了!干了1年!我却再次选择回到互联网大厂内卷!...
  6. 学习 python logging(1): 基本用法
  7. C语言实现粒子群算法(PSO)一
  8. 聊聊浏览器(webkit)资源加载机制
  9. pytorch--nn模块(1)
  10. 学习廖雪峰 Git 总结
  11. 公司用的非标普通自动化用单片机还是plc_高级电气自动化工程师必备十大技能...
  12. 手机屏碎了,怎样辨别是外屏坏还是内屏坏,看完这篇文章就明白了
  13. Fusion APP-简单网页转app制作教程
  14. Android毕业设计选题依据,毕业设计选题依据、目的意义、
  15. pycharm报错: with exit code -1073740791 (0xC0000409)
  16. 深入理解JS的delete
  17. 2012计算机科学排名,2012USNews美国大学计算机科学专业排名
  18. wxpython制作excel表格_怎么做一个精美的excel表格
  19. 区块链 -> 区块链简介
  20. Oracle数据库 | Oracle并发与一致性

热门文章

  1. map遍历是否改变原数组
  2. 删库了,除了跑路还能怎么办?在线等!
  3. linux nobody用户是什么 nobody用户介绍
  4. java布局FlowLayout
  5. 75条笑死人的知乎神回复,用60行代码就爬完了
  6. TUP第19期综述:从12306看海量并发网站架构
  7. 《Spring实战》读书笔记-第4章 面向切面的Spring
  8. PostgreSQL的ON CONFLICT
  9. 小学计算机教研组总结,小学信息技术中心教研组工作总结范文
  10. (自适应手机端)极致CMS居家用品纸盘纸盒纸杯卫生纸巾生产网站模板