赞
踩
近期了解了公众号,公众号可以设置关联小程序跳转,因此我编写了一个简单的小程序,做一个简单的攻略笔记。
包括设置与使用数据的方法、小程序绑定事件传参的方法,小程序异步请求方法及注意事项,公众号自定义菜单绑定小程序路径内容介绍。
下载链接:微信开发者工具。
.wxml
与html相仿,但是标签用法存在不同。.wcss
就是普通的css写法,可以添加类,在wxml中使用。.json
是一些配置信息,比如"navigationBarTitleText"可以配置小程序上方显示的页面名称。.js
就是脚本代码,生命周期在基础模板中都有,常用的onLoad可以在进入页面加载时执行。删除页面
时,要记得去根目录的app.json中pages属性把对应的页面路径删除。数据的处理一般在js文件中,js是一个Page包裹着一个对象,数据状态data
有点类似react的state
,对象属性data中可以设置初始值,同时生命周期也在该对象中。
设置data默认值使用this.setData
,也类似react中的this.setState
。
this.setData({ show: true })
页面获取时使用{{}}
中间的值就可以识别data中的变量,用法非常丰富,总结起来就是可以当成字符串
在你任何想要的地方使用
<view>
注意信息时效性!更新于{{result.updatetime}}
</view>
<view style="color: {{type===item.value?'red':''}};">
</view>
<image src="{{ result.photo }}"/>
页面与脚本交互,小程序的点击事件是bindtap
,后面绑定方法名,方法名在js文件设置,与data属性同级。
小程序绑定方法名时不能直接传递参数,必须要通过设置属性比如data-xxx
。
//错误
<view bindtap="changeType({{item.value}})"></view>
//正确
<view bindtap="changeType" data-value="{{item.value}}"></view>
获取参数时,可以通过event.currentTarget.dataset.xxx
获取,xxx
与设置属性时对应。
changeType: function (event) {
this.setData({ type: event.currentTarget.dataset.value })
}
fetch
,可以使用wx.request
,比如在onLoad中加载初始数据。this
指向,因此我们得在内部声明一下_this
,当然也可以使用箭头函数解决。onLoad: function () {
const _this = this
wx.request({
url: 'https://xxxx.com/xxxx',
method: 'GET',
data: {},
success: function success(res) {
_this.setData({ data: res.data })
},
fail: function fail() {
},
complete: function complete() {
}
});
},
开发管理-开发设置-服务器域名
中设置request白名单。image标签加上属性show-menu-by-longpress
<image src="./xx.png" show-menu-by-longpress></image>
在 app.ts
加入这一句
wx.showShareMenu({ withShareTicket: true, menus: ['shareAppMessage', 'shareTimeline'] })
因为一些函数在{{}}
中无法调用,会报错,所以我们可能需要创造自定义函数依赖
在页面目录创建index.wxs
文件。
比如我创建一个隐藏手机号码中间四位的方法。
var func = {
hideNumber: function (value) {
var res = value.substring(0, 3) + '****' + value.substring(7, 11)
return res
}
}
// 导出对外暴露的属性
module.exports = {
hideNumber: func.hideNumber
}
然后在wxml文件中引入
<!-- 引入.wxs文件 src为相对路径,module指定当前模块的名称 -->
<wxs module="func" src="./index.wxs"></wxs>
<!-- 即可使用 -->
<view>{{func.hideNumber(number)}}</view>
pages/index/index
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。