1、不同页面之间的传值方式

  • 通过URL问号传值
  1. 当前页面
wx.navigateTo({
url: '/pages/aaa/aaa?/userName=norma'
})

2. 另一个页面通过options获取到id

onLoad: function(options){
console.log(options.userName);
}
  • 通过定义全局变量
  • 在app.js中定义全局变量
App({
globalData: {
userName: 'norma'
}
})
  • 在页面中获取
const app = getApp();
console.log(app.globalData.userName);// 'norma'
  • 通过本地缓存
wx.setStorage('userName','norma');
  • 在页面中获取
wx.getStorage('userName');

2、页面与组件之间的方法调用

①子组件通过调用页面的方法修改页面中的数据

页面中引用组件,绑定事件

<list bind:change='change'></list>

获取

Page({
change(e) {
e.detail // 自定义组件触发事件时提供的detail对象
}
})

子组件(需要使用triggerEvent方法,指定事件名,detail对象和事件选项,触发事件的选项包括,bubbles,composed,capturePhase)

this.triggerEvent('change',{myEventDetail},{})

②页面调用子组件里的方法

页面引入dialog方法

onReady: function () {
this.dialog = this.selectComponent('#dialog');
},

页面中使用dialog组件中的方法

showDialog: function(){
this.dialog.show();
}

3、实现动画效果

①使用官方提供的API

创建动画对象、设置动画、导出动画

let animation = wx.createAnimation({});
animation.rotate(180).step({duration:3000});
this.setData({rotateData: animation.export()})

使用动画

<view animation='{{rotateDate}}'></view>

②动态绑定class,简单动画可参考Animate.css

<view class="test {{isActive ? 'active':'' }}"></view>

4、表单取值

①获取event中的值

当点击<form>表单中 form-type 为 submit 的<button>组件时,会将表单组件中的 value 值进行提交,需要在表单组件中加上 name 来作为 key

Page({
formSubmit(e) {
console.log('提交的表单数据为:', e.detail.value)
}
})

②通过绑定事件设置变量值保存表单数据

<input bindinput="inputTitle" />
inputTitle: function (e) {
this.setData({
title: e.detail.value,
})
},

微信小程序开发常见问题的更多相关文章

  1. 微信小程序开发常见问题分析

    距离微信小程序内测版发布已经有十几天的时间了,网上对微信小程序的讨论也异常火爆,从发布到现在微信小程序一直占领着各种技术论坛的头条,当然各种平台也对微信小程序有新闻报道,毕竟腾讯在国内影响力还是很大的 ...

  2. WordPress版微信小程序开发系列(二):安装使用问答

    自WordPress版微信小程序发布开源以来,受关注的程度超过我原来的想象.这套程序主要面对的用户是wordpress网站的站长,如果wordpress站想在微信的生态圈得到推广,小程序成为一种重要的 ...

  3. 微信小程序开发学习资料

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

  4. 微信小程序开发参考资料汇总

    不错的微信小程序入门教程:微信小程序入门二: 条件.遍历.网络请求.获取本地图片http://blog.csdn.net/lecepin/article/details/54016701 微信小程序入 ...

  5. 微信小程序开发资源整理

    有兴趣学习微信小程序开发的可以关注简书专题 微信小程序开发 由于微信已经开发文档和开发工具了,所以下面的内容用处不大了. 具体参考:http://mp.weixin.qq.com/wiki/ 这篇文章 ...

  6. 微信小程序开发心得

    微信小程序也已出来有一段时间了,最近写了几款微信小程序项目,今天来说说感受. 首先开发一款微信小程序,最主要的就是针对于公司来运营的,因为,在申请appid(微信小程序ID号)时候,需要填写相关的公司 ...

  7. 【微信小程序开发•系列文章六】生命周期和路由

    这篇文章理论的知识比较多一些,都是个人观点,描述有失妥当的地方希望读者指出. [微信小程序开发•系列文章一]入门 [微信小程序开发•系列文章二]视图层 [微信小程序开发•系列文章三]数据层 [微信小程 ...

  8. 微信小程序开发日记——高仿知乎日报(下)

    本人对知乎日报是情有独钟,看我的博客和github就知道了,写了几个不同技术类型的知乎日报APP 要做微信小程序首先要对html,css,js有一定的基础,还有对微信小程序的API也要非常熟悉 我将该 ...

  9. 微信小程序开发日记——高仿知乎日报(中)

    本人对知乎日报是情有独钟,看我的博客和github就知道了,写了几个不同技术类型的知乎日报APP要做微信小程序首先要对html,css,js有一定的基础,还有对微信小程序的API也要非常熟悉 我将该教 ...

  10. 微信小程序开发日记——高仿知乎日报(上)

    本人对知乎日报是情有独钟,看我的博客和github就知道了,写了几个不同技术类型的知乎日报APP 要做微信小程序首先要对html,css,js有一定的基础,还有对微信小程序的API也要非常熟悉 我将该 ...

随机推荐

  1. uniapp组件监听onShow

    在uniapp开发中,组件中需要监听页面onShow的方法 index.vue onShow() { uni.$emit('onShow', 1); //用于子组件监听onShow }, 子组件 be ...

  2. springcloud(六) - 配置中心

    功能介绍 设置和业务代码获取配置 功能实现 <!-- 添加configjar --> <dependency> <groupId>org.springframewo ...

  3. SpringBoot整合MyBatis-Plus详细使用方法

    SpringBoot整合mp 一.添加依赖pom.xml <dependency> <groupId>mysql</groupId> <artifactId& ...

  4. 【C++】之前学习C++没有注意到的点或者学到了冷知识(待补充)

    1.string和c_str() string str = "hello"; const char* cstr = str.c_str(); str = "yep,i m ...

  5. windows下的故障自愈程序,可以实现进程,kafka按时间段判断状态,日志分级

    self-healing 1.使用python3.11写的一个故障自愈程序. 2.本程序在window2019 server运行测试通过 3.通过监控java程序里的详细启动包名来判断进程是否存在 4 ...

  6. 【git】git子模块操作-添加子模块与克隆子模块

    https://git-scm.com/book/zh/v2/Git-%E5%B7%A5%E5%85%B7-%E5%AD%90%E6%A8%A1%E5%9D%97 git submodule upda ...

  7. drush use dev.mentor.com | expecting statement

    在多站点的环境中, 不清楚在哪个目录下运行drush cc all, 这时可以运行 drush use dev.mentor.com然后还发现一个很搞笑的事情, 在一个文件的末尾一直现实红色报错符号, ...

  8. SQLite检查表是否存在

    通过检索SQLite的内置表sqlite_master,查询是否有需要检索的表信息,即可得出该表是否存在. SELECT * FROM sqlite_master WHERE type='table' ...

  9. ubuntu 铺满桌面 调整字体 安装firefox中文版

    ubuntu 铺满桌面 安装 open-vm-tools sudo apt-get install open-vm-tools sudo apt-get install open-vm* . rebo ...

  10. dynamics 365 复制(克隆)现有组织

    很多时候需要复制现有的开发环境作为新的开发环境,以保留原有测试数据,旧的开发环境作为问题修复环境,以下是复制步骤: 1. 登录数据库服务器,备份现有数据库 2. 还原数据库为新的数据库名称 3. 在前 ...