微信小程序 笔记汇总(1)

1、小程序开发官方技术文档

https://developers.weixin.qq.com/miniprogram/dev/framework/

2、关于变量对象data 和 前端wxml取后台js变量值

2.1 页面变量对象data
对象data 有两个方面用途

第一,前端wxml的数据渲染是通过设置此对象中定义的变量进行关联展现的

第二,定义JS页面中的页面局部变量,使其整个页面中可使用或调用

对象data定义的变量支持各种数据类型,string,int,[],{}

第一.wxml数据渲染,只要通过设置data值(this.setData({…}))即可

如:

wxml页面:detail对象中包含有TaskBillCode与BillDate两个属性
在这里插入图片描述
js页面:
在这里插入图片描述
第二.页面变量
定义:
在这里插入图片描述
存储:
在这里插入图片描述
使用:
在这里插入图片描述

2.2前端wxml取后台js变量值

1.js后台只能通过设置Data里的变量值( this.setData({}) ),前台wxml才能得到渲染 wxml以双括号取变量值 { { var }}

JS:
在这里插入图片描述
设置变量值 :
在这里插入图片描述
WXML:
在这里插入图片描述
2. 列表渲染,即数据List 用循环进行渲染 wx:for="{ { taskItems}}" 默认子项为item
在这里插入图片描述
3、循环遍历(img)
在wxml页面中
wxml页面
在这里插入图片描述
在js文件中
在这里插入图片描述

4.关于多数据的数据类型,目前wxml取变量只支持数组,并不支持对象
在这里插入图片描述
这里面的billStatus 只能定义为数组类型,才能支持wxml用变量取数组的值

data {

billStatus:[]

}

如定义为下面这样

data {

billStatus:{}

}

则会导致 { {billStatus[item.Status]}} 取不到值 ,但代入数值还是可以取到 { {billStatus[1]}}

5.关于在全局里app.js定义数组

两种方式

一种是直接在全局变量对象中定义,但这样是指定不了下标的,下标只能从默认的0开始
在这里插入图片描述
别一种则是在全局变量对象中只定义动态数组变量,在加载后赋值 这样是能达到指定下标变量名的效果
在这里插入图片描述
在这里插入图片描述

3、多层次对象数组的赋值、动态赋值

开发中经常会从后台拿到类似数据:

data:{
   
  info1:{
   
    name: 'aa',
    address: 'bb'
    ...
  },
  info2: [
    {
    name: 'aa' }, {
    name: 'bb' } ...
  ]
}
 
如果要修改 `name = 'cc'` 怎么做呢?
一般我们这么写:
 
this.data.info1.name = 'cc' // 没用
this.setData({
   
  info1.name: 'cc', // 编辑器报错
  'info1.name': 'cc' // 也没用
})

解决方案:
第一步:先用一个变量,把(info1.name)用字符串拼接起来。
第二步:将变量写在[]里面即可。

const _k1 = `info1.name` // 拼接已知属性
const _k2 = `info2[${
   index}].name` // 拼接动态属性
this.
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值