博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
微信小程序开发总结
阅读量:5925 次
发布时间:2019-06-19

本文共 1198 字,大约阅读时间需要 3 分钟。

微信小程序开发

1.数据绑定 {

{ name}} ,和vue不同的是如果直接更改data并不会重新渲染,而是要使用setData({name:data})的方法

2.调用组件的方法:

  • 获取元素:

    const ele = this.selectComponent(id)
  • 调用组建的method中的方法:

    ele.functionName()

3.组件中的propertiesdata的区别:

  • 首先properties是外部可更改的属性,data外部不能修改
  • 两者用法差不多 都是this.data.name来取值

4.小程序中的传参问题

​ 首先需要知道的是没有办法和vue中一样 使用函数名(参数)的形式实现,在小程序中如果想要传参数,则需要在绑定的元素中定义属性 data-参数名的形式,在回调函数中通过target.dataset属性获取,例如:

test: function (event) {
console.log(event.target.dataset.streamid)}

5.嵌套传参的问题:

{
{item.title}}
{
{item.num}}
点击刷新

在这里插入图片描述

点击内容区域的时候,如果使用target来取值会出现空,而currentTarget则不会

在这里插入图片描述

在官方的文档上是这样介绍两者的在这里插入图片描述

6关于setData()修改数组对象的操作, 一般setData()传入的是一个对象,如下name是作为了key的名称

data:{
name:'fa', array:[{
name:'aa',num:1},{
name:'bb',num:2}]}this.setData({
name:'wx'})

当我们只是想修改array数组中的num的值,这时候按照上面的就没法实现了, 这时候可以采用’array[0].num’:2来实现

this.setData({
['array[0].num']:2})

但是呢这个’0‘又是不能动态更改的,所以呢还是需要整体修改例如:

for (var i = 0; i < this.data.increase.length; i++) {
if (this.data.array[i].name == 'aa'){
this.data.increase[i].num = 2 break }}this.setData({
array: this.data.array})

转载于:https://www.cnblogs.com/FanMLei/p/10500972.html

你可能感兴趣的文章
分享实录|区块链技术与智能合约入门(开发实例)
查看>>
数组过滤
查看>>
CML更新 | 新增百度小程序、支付宝小程序
查看>>
浅谈javascript递归(白话版)
查看>>
Taro小程序采坑记
查看>>
Vue根据菜单json数据动态按需加载路由Vue-router
查看>>
《深入实践Spring Boot》下载
查看>>
Android Studio3.0简介
查看>>
Https 加密原理分析
查看>>
css3 伪类选择器
查看>>
Google Play/App Store/Facebook多账号关联问题,你会判断吗?
查看>>
微信小程序之登录
查看>>
你不知道的JavaScript(二)
查看>>
weui-react项目实战新心得
查看>>
浮点数一些设计原理
查看>>
Ethereum-EIPs
查看>>
「读懂源码系列2」我从 lodash 源码中学到的几个知识点
查看>>
SAP的SqlAnyWhere中数据库日志文件删除后如何新建
查看>>
Amazon Alexa 新里程碑: 50000 个功能、 20000 种设备、 3500 个品牌
查看>>
JavaScript 学习提升
查看>>