文章链接:https://mp.weixin.qq.com/s/F1zzS7mvMpFaplq4KINzQg

之前做过一段时间的小程序开发,自己也写过两个自己的小程序,了解些前端的知识,相对而言还是比较容易上手的,小程序的视图采用wxmlwxss 编写,对比前端就是htmlcsswxmlhtml 类似是描绘页面结构的,小程序有一套自己的标签,而大部分前端的css样式都可以用在 wxss里面。关于数据绑定部分,小程序使用 Mustache 语法(双大括号) 进行绑定。这里要讲的是wxs ,小程序自己的一套脚本语言,可以用于渲染页面。

一个简单的例子,新建一个a.wxml 文件,代码如下:

<wxs module="a">
var str = "qwerty"
module.exports.txt = str
</wxs> <view>
{{a.txt}}
</view>

这里wxs 代码直接编写在wxml文件内,定义wxs 的module名为a,这个参数是必须的;通过 exports暴露对外的属性,外部使用的话,直接通过module名调用属性值。

当然,wxs代码也可以写在以.wxs 为后缀名的文件内a.wxs ,里面直接编写代码:

var str = "qwerty"
module.exports.txt = str

使用的话,在a.wxml 文件内同样需要使用 标签,并且定义module 名,注意src 使用相对路径引入wxs文件:

<wxs src="./index.wxs" module="a"/>
<view>
{{a.txt}}
</view>

这里推荐使用以 .wxs 为后缀名来封装代码,这样便于其他文件通用。

同时,在.wxs模块中可以引用其他 wxs 文件模块,注意这里只能以文件的形式引用,通过require 引用文件相对路径。

//编写 b.wxs文件
var str = "123456"
module.exports.txt = str //wxs 代码直接编写在 wxml文件内
<wxs module="a">
//通过require 引用 b.wxs文件
var b = require("./b.wxs")
var str = "qwerty"
module.exports.txt = b.txt
</wxs> <view>
{{a.txt}}
</view> ------------------------------------------ //在 a.wxs 里引用 b.wxs
var b = require("./b.wxs")
var str = "qwerty"
module.exports.txt = b.txt //a.wxml 里引入 a.wxs
<wxs module="a" src="./index.wxs"/>
<view>
{{a.txt}}
</view>

同样wxs 还可以对外暴露方法,

<wxs module="a">
var add = function(i, j) {
return i + j
}
module.exports.add = add
</wxs> <view>
{{a.add(1,2)}}
</view>

这样我们可以通过编写wxs,对data 数据进行处理,渲染到view层。

实际项目中,通过wxs 可以简化代码,更加具有通用性。

欢迎关注我的个人博客:https://www.manjiexiang.cn/

更多精彩欢迎关注微信号:春风十里不如认识你

一起学习,一起进步,欢迎上车,有问题随时联系,一起解决!!!

小程序使用之WXS的更多相关文章

  1. 小程序脚本语言WXS详解

    WXS脚本语言是 Weixin Script脚本的简称,是JS.JSON.WXML.WXSS之后又一大小程序内部文件类型.截至到目前小程序已经提供了5种文件类型. 解构小程序的几种方式,其中一种方式就 ...

  2. 小程序脚本语言WXS,你想要的都在这里了

    WXS脚本语言是 Weixin Script脚本的简称,是JS.JSON.WXML.WXSS之后又一大小程序内部文件类型.截至到目前小程序已经提供了5种文件类型. 解构小程序的几种方式,其中一种方式就 ...

  3. 小程序列表倒计时 wxs 实现

    效果 代码 js //拿到服务器时间 var serverLocalDate = data.serverLocalDate; //调用函数开始计时 this.serverLocalDate(serve ...

  4. 【小程序】wxs使用

    wxs使用 WXS(WeiXin Script)是小程序的一套脚本语言,结合WXML,可以构建出页面的结构. wxs可以说就是为了满足能在页面中使用js存在的,在wxml页面中,只能在插值{{ }}中 ...

  5. 微信小程序开发---视图层(View)

    WXML WXML能力: 数据绑定 列表渲染 条件渲染 模板 事件 数据绑定 数据绑定使用 Mustache 语法(双大括号)将变量包起来,可作用于内容,组件属性(需要在双引号之内),控制属性(需要在 ...

  6. 微信小程序wxml文件中调用自定义函数

    想在微信小程序的wxml文件里自如的像vue那样调用自定义的方法,发现并不成功,得利用WXS脚本语言. WXS脚本语言是 WeiXin Script 脚本语言的简称,是JavaScript.JSON. ...

  7. 微信小程序学习指南

    作者:初雪链接:https://www.zhihu.com/question/50907897/answer/128494332来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明 ...

  8. 小程序框架之视图层 View

    (1)视图层View 框架的视图层由 WXML 与 WXSS 编写,由组件来进行展示. 将逻辑层的数据反应成视图,同时将视图层的事件发送给逻辑层. WXML(WeiXin Markup languag ...

  9. 微信小程序开发-框架

    小程序开发框架的目标是通过尽可能简单.高效的方式让开发者可以在微信中开发具有原生 APP 体验的服务.框架提供了自己的视图层描述语言 WXML 和 WXSS,以及基于 JavaScript 的逻辑层框 ...

随机推荐

  1. Java8新特性之五:Optional

    NullPointerException相信每个JAVA程序员都不陌生,是JAVA应用程序中最常见的异常.之前,Google Guava项目曾提出用Optional类来包装对象从而解决NullPoin ...

  2. Java8新特性之二:方法引用

    上一节介绍了Java8新特性中的Lambda表达式,本小节继续讲解Java8的新特性之二:方法引用.方法引用其实也离不开Lambda表达式. 1.方法引用的使用场景 我们用Lambda表达式来实现匿名 ...

  3. [译]PEP 380--子生成器的语法

    导语: PEP(Python增强提案)几乎是 Python 社区中最重要的文档,它们提供了公告信息.指导流程.新功能的设计及使用说明等内容.对于学习者来说,PEP 是非常值得一读的第一手材料,学习中遇 ...

  4. 强化学习(十三) 策略梯度(Policy Gradient)

    在前面讲到的DQN系列强化学习算法中,我们主要对价值函数进行了近似表示,基于价值来学习.这种Value Based强化学习方法在很多领域都得到比较好的应用,但是Value Based强化学习方法也有很 ...

  5. 为什么需要Docker?

    前言 只有光头才能变强. 文本已收录至我的GitHub仓库,欢迎Star:https://github.com/ZhongFuCheng3y/3y 估计大家也可能听过Docker这项技术(在论坛上.招 ...

  6. Netty源码—四、事件处理

    前面经过channel初始化.注册,所需要的数据结构(epoll_event)基本上准备好了,serverSocket也处于监听状态,可以接收来自客户端的请求了.NioServerSocketChan ...

  7. 如何使用JS来开发室内地图商场停车场车位管理系统

    在线体验到室内地图的功能后,手机对室内地图加载一个字,要显示“快”,目前微信和电脑都可以打开室内地图的要求是3秒内打开,能有定位导航的功能最好,这样方便找到要去的地方. 对于经常逛商场的MM来说,哪里 ...

  8. 【Teradata TTU】Windows TTU安装工具列表

    Version Display Name-------------------------------------------------------------------------------- ...

  9. 286万QPS!腾讯云TDSQL打造数据库领域的“超音速战机”

    Bloodhound SSC超音速汽车将陆地极限速度提升到1678公里/小时,号称陆地“超音速战斗机”.无独有偶,同样也在2017年,在英特尔®.腾讯金融云团队的共同见证下,腾讯云数据库TDSQL采用 ...

  10. 架构师入门:Spring Cloud系列,Hystrix与Eureka的整合

    和Ribbon等组件一样,在项目中,Hystrix一般不会单独出现,而是会和Eureka等组件配套出现.在Hystrix和Eureka整合后的框架里,一般会用到Hystrix的断路器以及合并请求等特性 ...