文章链接: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. Python调用ansible API系列(四)动态生成hosts文件

    方法一:通过最原始的操作文件的方式 #!/usr/bin/env python # -*- coding: utf-8 -*- """ 通过操作文件形式动态生成ansib ...

  2. 广州三本找Java实习经历

    前言 只有光头才能变强 这阵子跑去面试Java实习生啦~~~我来简单介绍一下背景吧. 广州三本大三在读,在广州找实习.大学开始接触编程,一个非常平庸的人. 在学习编程时,跟我类似的人应该会有一个疑问: ...

  3. 数据结构与算法(九):AVL树详细讲解

    数据结构与算法(一):基础简介 数据结构与算法(二):基于数组的实现ArrayList源码彻底分析 数据结构与算法(三):基于链表的实现LinkedList源码彻底分析 数据结构与算法(四):基于哈希 ...

  4. openlayers一:显示地图与鼠标地理坐标

    openlayers两个好用的开源JS互动地图库之一,另一个是leaflet. openlayers的特点是是大而全,自身包含绝大多数功能,文档好看. leaflet是小而美,自身小,但支持扩展,好用 ...

  5. 关于静态注册BroadcastReceiver接收不到广播的问题

    1.背景&解决方法 最近碰到一个需求,app监听特定的广播,接收到广播后启动自己再进行处理.需求很简单,静态注册就好,不过,在自测的时候遇到一个问题,app安装后没启动过的状态下,什么广播都收 ...

  6. 如何购买并配置linux服务器上的数据库

    首先百度搜索阿里云 如果是学生可以学生认证 然后注册账号->个人认证->学生认证 然后你会发现 服务器一年只要114,114你买不了上当,买不了吃亏,买下面的ECS服务器,系统可以选择wi ...

  7. Linux新加磁盘挂载和重启自动挂载

    提示两点:*新加的硬盘需要重启服务器fdisk -l才能看到*下面操作要用root账户大概是这样的,查看-分区-格式化-挂载-重启自动挂载1.加硬盘后重启服务器查看[root@test199 ~]# ...

  8. windows凭据管理

    解决windows凭据无法保存的问题1: 运行-gpedit.msc(组策略)-计算机配置-管理模板-系统-凭据分配 双击右侧”允许分配保存的凭据用于仅NTLM服务器身份验证“ 在弹出的窗口中选中“已 ...

  9. Shell中map的使用

    Shell中的map与array有很多的相似之处,array操作:https://www.cnblogs.com/qq931399960/p/10786111.html 一.在使用map时,需要先声明 ...

  10. spring集成shiro登陆流程(上)

    上一篇已经分析了shiro的入口filter是SpringShiroFilter, 那么它的doFilter在哪儿呢? 我们看到它的直接父类AbstractShrioFilter继承了OncePerR ...