1,三目运算改变class值:

<view class="{{flag ? 'change' : 'change_after'}}">改变字体颜色</view>  //flage为true/false时,选择class名

应用场景:需要动态改变元素样式。比如:点击某按钮,改变字体颜色。

2,利用缓存实现:点击按钮,数字减一

//XML页面:
<text style='font-size:26rpx; color:#ff0000'>{{counts}}</text> //JS页面:
onLoad: function (options) {
var counts = wx.getStorageSync('key') //获取缓存值
this.data.currentcounts = counts //***把counts赋值给data的属性currentcounts
if (counts) { //判断是否存在缓存值
this.setData({ //存在的话,将值绑定到counts
counts: counts
})
} else {
wx.setStorageSync('key', 9) //不存在的话,设置缓存值。(为方便测试,这里设置为9)
}
// console.log(counts);
},
  self_redution: function (event) {  //自定义方法
var a = wx.getStorageSync('key') //取得缓存值
if (a > 0) {
var b = a - 1 //大于0,那么自身值减一
} else {
var b = this.data.currentcounts //***否则,缓存值为上面设置的值
}
console.log(b);
a = wx.setStorageSync('key', b)
this.setData({
counts: b, //将缓存值绑定到counts
}) formSubmit: function (event) { this.self_redution() //调用上面自定义方法 },
 

应用场景:报名时,每次表单提交成功时,剩余可报名人数减掉一人。

上面有一个知识点:如何将onload中获取的值传递到点击事件中?这里采取一个通过data:{}中转的办法:把counts赋值给data的属性currentcounts

this.data.currentcounts = counts  //首先先在onload中:将counts赋值给data的属性currentcounts
var b = this.data.currentcounts  //然后在表单的提交函数中: this.data.currentcounts就是我们上面的counts值

3,定义一个方法,如何在点击事件中调用

//某个js文件下

  self_redution:function(event){    //定义方法
console.log("我来自自定义方法:自减");
}, formSubmit: function (event) { this.self_redution() //调用方法(别忘记加this) },

------------------------

问题:

今早过来接着优化表单提交【就是每次提交之后,将写入缓存的数值减一】,调试的时候频繁测试代码是否能成功执行,所以会有好多次的表单提交。试着试着,突然浏览器报错,同时也收不到邮件....  然后我点预览在手机上看效果,结果也报错...

微信小程序预览报错:

Error: tunneling socket could not be established, cause=connect ECONNREFUSED 127.0.0.1:64412

浏览器报错:

appservice:1014 POST https://xxxx/sendEmail.php net::ERR_PROXY_CONNECTION_FAILED 

处理:在网上搜到的应该是代理设置上的问题 ,关闭代理。

工具栏 -“设置”-“代理设置”,选择“不使用任何代理,勾选后直连网络”。

取消代理后,不再报错回复正常。很奇怪,之前还一直好好的,就算是默认代理也没有问题,最有可能就是我频繁提交表单了....

catchtouchmove='true'  处理遮罩底层div滚动问题
 
ES6箭头函数用法:

let goodsList = [
{ actEndTime: '2018-09-01 10:00:43' },
{ actEndTime: '2018-08-01 11:00:00' },
{ actEndTime: '2018-10-01 12:45:56' },
{ actEndTime: '2018-07-01 15:00:23' },
{ actEndTime: '2018-09-23 17:00:22' },
{ actEndTime: '2018-09-14 19:00:44' },
{ actEndTime: '2018-09-21 21:00:34' },
{ actEndTime: '2018-10-17 09:00:37' },
{ actEndTime: '2018-03-21 05:00:59' },
{ actEndTime: '2018-08-19 07:00:48' },
{ actEndTime: '2018-08-03 10:00:11' }
] //普通写法
var end = [];
goodsList.forEach(function(curr){
console.log(curr.actEndTime);
end.push(curr.actEndTime);
})
console.log(end); //ES6写法:

  var end = [];

  goodsList.forEach(curr=>{
    end.push(curr.actEndTime)
  })
  console.log(end);

 
 

微信小程序之小技能篇(一)的更多相关文章

  1. 新人学习微信小程序开发之框架篇

    大家好我是智哥,一名专注于前端领域的一名码农. 咱们今天主要来说说微信小程序, 最近一段时间微信群里的小程序,小游戏各种分享是突然一下子就爆发了,现在来看小程序作为微信的重磅功能无疑又是下一个风口.咱 ...

  2. 微信小程序教程(第一篇)

    目录 第一篇小程序概述 第二篇如何注册接入小程序及搭建开发环境 第三篇小程序的架构及实现机制,信道服务及会话管理 第四篇小程序开发基本框架及其限制与优化 第五篇小程序开发项目实例,测试及发布 .... ...

  3. 使用wepy开发微信小程序商城第三篇:购物车(布局篇)

    使用wepy开发微信小程序商城 第三篇:购物车(布局篇) 前两篇如下: 使用wepy开发微信小程序商城第一篇:项目初始化 使用wepy开发微信小程序商城第二篇:路由配置和页面结构 基于上两篇内容,开始 ...

  4. 我的第一个上线小程序,案例实战篇二——LayaAir游戏开始界面开发

    不知不觉我的第一个小程序已经上线一周了,uv也稳定的上升着. 很多人说我的小程序没啥用,我默默一笑,心里说:“它一直敦促我学习,敦促我进步”.我的以一个小程序初衷是经验分享,目前先把经验分享到博客园, ...

  5. 微信小游戏 小程序与小游戏获取用户信息接口调整 wx.createUserInfoButton

    参考: 小程序•小故事(6)——微信登录能力优化 小程序•小故事(4)——获取用户信息 本篇主要是讲微信getUserInfo接口不再出现授权弹框 那么原来getUserInfo是怎么样?修改之后又是 ...

  6. 手牵手,使用uni-app从零开发一款视频小程序 (系列上 准备工作篇)

    系列文章 手牵手,使用uni-app从零开发一款视频小程序 (系列上 准备工作篇) 手牵手,使用uni-app从零开发一款视频小程序 (系列下 开发实战篇) 前言 好久不见,很久没更新博客了,前段时间 ...

  7. 微信小程序——智能小秘“遥知之”源码分享(语义理解基于olami)

    微信小程序智能生活小秘书开发详解 >>>>>>>>>>>>>>>>>>>>> ...

  8. 微信小程序+“芝麻小客服”可设自动关注公众号,助力运营闭环

    微信小程序全面上线已经接近1年的时间,从最初的"用完即走"理念到2017年总计更新开放60余次的功能创新,微信小程序不一定会爆发下一次的红利,但绝对是微信生态中重要的一环. 芝麻小 ...

  9. 玩玩小程序:使用 WebApi 交互打造原生的微信小程序 - 图灵小书架

    使用 WebApi 交互打造原生的微信小程序 - 图灵小书架 目录 介绍 源码地址 扫一扫体验 代码分析 其它相关信息(互联网搜集) 介绍 定时抓取图灵社区官网的首页.最热.推荐和最新等栏目的相关图书 ...

  10. [BUG]微信小程序生成小程序码"小程序页面路径不存在,请重新输入"

    描述 小程序页面线上能打开. 微信官方 获取小程序页面小程序码 页面 ,输入 小程序页面路径,提示 "小程序页面路径不存在,请重新输入". 使用微信复制小程序路径方法, 也是同样的 ...

随机推荐

  1. MySQL基础操作(二)

    MySQL基础操作 一.视图 视图是一个虚拟表(非真实存在),其本质是[根据SQL语句获取动态的数据集,并为其命名],用户使用时只需使用[名称]即可获取结果集,并可以将其当作表来使用.注意:使用视图时 ...

  2. Hystrix【异常机制处理】

    在之前的老版本中,feign中是默认开启hystrix的,从新版本中默认已经关闭了,如果要通过FeignClient调用服务并开启hystrix的话,需要自定义开启,即:feign.hystrix.e ...

  3. Python循环的基本使用(for in、while)

    Python的循环有两种: 一种是for-in 循环:主要用于遍历tuple.list; 一种是while循环:只要条件满足,就不断循环,条件不满足时退出循环. #!/usr/bin/python # ...

  4. PowerBuilder学习笔记之2PowerScript语言(三)

    教材地址:https://wenku.baidu.com/view/1e82d26925c52cc58ad6be05.html?sxts=1565679996440 2.6嵌入式SQL语句 2.6.1 ...

  5. drbd+nfs+keepalived

    写的很详细 理论知识: https://www.cnblogs.com/kevingrace/p/5740940.html 写的很详细 负载: https://www.cnblogs.com/kevi ...

  6. 【Linux】Shell批量修改文件名

    修改文件名,替换中间字符: 例如:ABC_define_EFG.jpg,要把中间的define替换成argument: 用如下脚本即可: for var in *; do mv "$var& ...

  7. 运输计划[二分答案 LCA 树上差分]

    也许更好的阅读体验 \(\mathcal{Description}\) 原题链接 概括一下题意 给一颗有\(n\)个点带边权的树,有\(m\)个询问,每次询问\(u,v\)两点间的权值和,你可以将树中 ...

  8. Python中的单例模式的几种实现方式和优化以及pyc文件解释(转)

    原文:https://www.cnblogs.com/huchong/p/8244279.html 另一篇关于.pyc文件是什么?  原文: http://blog.sina.com.cn//s/bl ...

  9. 两通道实信号使用一个FFT同时计算算法

    前言 在工程的实际应用场景中,往往是需要最省资源量.而DSP资源和BRAM资源对FPGA来说弥足珍贵. 对于同时存在多个通道的实信号需要做FFT而言,常规做法是每个通道用一个FFT IP,FFT IP ...

  10. OpenStack kilo版(7) 部署dashboard

    安装dashboard  root@controller:~# apt-get install openstack-dashboard  配置 /etc/openstack-dashboard/loc ...