详解微信小程序的不同函数调用的几种方法

一、调取参数

直接调取当前js中的方法,

调取参数that.bindViewTap();

二、跳转页面

navigateTo: function () {
wx.navigateTo({ url: '../page4/page4' });
},

全局变量使用方法
a.js
var app = getApp()
Page({
data: {
hex1: [],
})}
//设置全局变量
if (hex1 != null) {
app.globalData.hex1 = hex1;
}

b.js
接收全局变量
var app = getApp()
Page({
 data:{
  hex1:[]
 },

onLoad:function(options){
   this.setData({
   hex1:getApp().globalData.hex1
  });
 },

})

三、获取事件的方法:

获取事件的方法:
bindViewTap1: function (e) {
console.log('事件event',e)
}

监听input方法
a.wxml页面
<input type="number" maxlength="2" placeholder="小于100分钟" placeholder-class="psection" bindinput="listenerTimeInput" />

a.js页面
//监听input框输入
listenerTimeInput: function (e) {
this.data.time = e.detail.value;
console.log('哒哒this.data.time', this.data.time)
},

获取当前时间戳
var timestamp = Date.parse(new Date());
timestamp = timestamp / 1000;
console.log("当前时间戳为:" + timestamp);

时间转换为秒
var stime = '';
var format = '';
stime = time * 60;
console.log('秒', stime);

转换为时间
Date.prototype.format = function (format) {
var date = {
"M+": this.getMonth() +1,
"d+": this.getDate(),
"h+": this.getHours(),
"m+": this.getMinutes(),
"s+": this.getSeconds(),
"q+": Math.floor((this.getMonth() +3) /3),
"S+": this.getMilliseconds()
};
if (/(y+)/i.test(format)) {
format = format.replace(RegExp.$1, (this.getFullYear() +'').substr(4 - RegExp.$1.length));
}
for (var kin date) {
if (new RegExp("(" + k +")").test(format)) {
format = format.replace(RegExp.$1, RegExp.$1.length == 1
? date[k] : ("00" + date[k]).substr(("" + date[k]).length));
}
}
return format;
}
var oktime = '';
oktime = newDate.format('yyyy-MM-dd h:m:s');

//获取当前时间
var date = new Date();
var seperator1 = "-";
var seperator2 = ":";
var month = date.getMonth() + 1;
console.log('大大', month);
var strDate = date.getDate();
if (month >= 1 && month <= 9) {
month = "0" + month;
}
console.log('大大', month);
if (strDate >= 0 && strDate <= 9) {
strDate = "0" + strDate;
}
var currentdate = date.getFullYear() + seperator1 + month + seperator1 + strDate + " " + date.getHours() + seperator2 + date.getMinutes() + seperator2 + date.getSeconds();
console.log('当前时间', currentdate);
console.log('年', date.getFullYear());
console.log('月', month);
console.log('日', date.getDate());
console.log('时', date.getHours())
console.log('分', date.getMinutes())

转为串
oktime = oktime.toString();

提取数值
var oktime = oktime.replace(/[^0-9]/ig, "");
console.log('oktime', oktime);

获取年 月 日 时 分 秒
var year1 = '';var month1 ='';var date1 ='';var hours1 ='';var min1 ='';
year1 = oktime.substring(2, 4);
console.log('year1', year1);
month1 = oktime.substring(4, 6);
console.log('month1', month1);
date1 = oktime.substring(6, 8);
console.log('date1', date1);
hours1 = oktime.substring(8, 10);
console.log('hours1', hours1);
min1 = oktime.substring(10, 12);
console.log('min1', min1);

转换为16进制

var zhen4000 = parseInt(zhen400);

console.log('飞zhen4000', zhen4000)

zhen4000 = zhen4000.toString(16);

console.log('@@@@@zhen4000', zhen4000);

将值由16进制转10进制
zhen1 = parseInt(zhen001, 16);

// 进行异或运算
//注:我使用过16进制的异或运算,没成功,最后使用了比较复杂的方法,由十六进制转化为十进制异或运算,将得到的值在转为十六进制
zhen9 = zhen1 ^ zhen2

四、点击事件url传值

点击事件url传值
wx.redirectTo({
url: '../page1/page1?deviceId='+title+'&name='+name,
success: function(res){
// success
},

.js传值到.wxml页面
js页面
this.setData({
ntc: ntc,
result: ntc
})
wxml页面
<rich-text class='tep'>{{ntc}}℃</rich-text>

.wxml页面bindtap点击事件传值到.js 页面跳转 监听id传值
bindtap="bindViewTap1"值触发到到js里面的bindViewTap1:function方法
.wxml
<navigatorbindtap="bindViewTap1"id='time1'url="../page5/page5"hover-class="navigator-hover">

.js
bindViewTap1: function (e) {
//hex1
var id = e.currentTarget.id;
console.log('坎坎坷坷扩id',id);
}

设置跳出循环
//跳出循环,只运行一次
在data()里面添加
flag : '',
在你使用的方法里面加
var flag = true;
if (flag) {
that.bindViewTap3();
that.bindViewTap2();
flag = false;
}

函数间传值
//设置全局data
 data{rtime:''}

btn1: function(e){
 this.setData({
   rtime : time
  })
}

btn2:funciton(e){
 console.log('###@@@@@#',this.data.rtime)
}

以上所述是小编给大家介绍的微信小程序的不同函数调用的几种方法详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!

(0)

相关推荐

  • 解决mpvue + vuex 开发微信小程序vuex辅助函数mapState、mapGetters不可用问题

    前言 最近博主正在用微信小程序开发一款网上商城系统.恰好赶上了美团开源的小程序开发框架mpvue.该框架继承了vue.js的特性,用起来还是蛮爽的.然后在开发中,数据仓库这块懵逼了, 引入的vuex的辅助函数mapState.mapGetters.mapMutations.mapActions等怎么就不能用呢.苦恼之际打开D盘,一番愉悦之后,终于想通啦- 问题分析 •vuex辅助函数 首先简单说一下vuex的辅助函数mapState.mapGetters.mapMutations.mapActi

  • 微信小程序提取公用函数到util.js及使用方法示例

    本文实例讲述了微信小程序提取公用函数到util.js及使用方法.分享给大家供大家参考,具体如下: 在小程序中,定义了一项工具文件utils,此文件的js旨在本文件之内有效,当其他子页面想调用其中的js方法或者变量时,需要两步骤: 1:在utils被调用的js文件中,面向对象的方式模型输出: module.exports={要调用的函数名称:要调用的函数名称 }; 2:在要调用的js文件中模块化引入utils的js文件 var object=require("utils被调用的js文件地址&quo

  • 微信小程序 定义全局数据、函数复用、模版等详细介绍

    微信小程序 定义全局数据.函数复用.模版等问题总结: 1.如何定义全局数据 在app.js的App({})中定义的数据或函数都是全局的,在页面中可以通过var app = getApp();  app.function/key的方式调用,不过我们没有必要再app.js中定义全局函数. 2.如何实现代码的复用 函数的复用: test.js test: function(){ } module.exports={ test:test } other.js var common = require('

  • 详解在微信小程序的JS脚本中使用Promise来优化函数处理

    在我们传统的Javascript开发函数编写中,我们习惯了回调函数的处理,不过随着回调函数的增多,以及异步处理的复杂性等原因,代码越来越难读,因此诞生了使用Promise来优化JS函数处理的需求,引入Promise确实能够很好的解决异步回调函数的可读性等问题,同时也使得我们调用的时候代码简洁一些,本文介绍如何在小程序的JS代码里面使用Promise来封装一些函数的做法. 1.小程序传统的回调处理 例如我们生成一个小程序,里面的app.js里面就自动带有一个getUserInfo的函数,这个是使用

  • 微信小程序常用简易小函数总结

    本文实例讲述了微信小程序常用简易小函数.分享给大家供大家参考,具体如下: 最近一直在写微信小程序,而且由于是第二次写了,所以针对很多通用的情况封装了一些函数,建议你们放在app.js中,方便全局去调用. 提示类函数 微信有一种原生的API用于显示提示类结果的wx.showToast,而且其中的图片是可以自定义的,所以为了保证全部一致性,而且方便调用,所以我将其全部封装在了app.js中: // 成功 showSuccess: function (message) { wx.showToast({

  • 微信小程序 详解Page中data数据操作和函数调用

    微信小程序 详解Page中data数据操作和函数调用 Page() 函数用来注册一个页面.接受一个 object 参数,其指定页面的初始数据.生命周期函数.事件处理函数等. //index.js <pre code_snippet_id="2049407" snippet_file_name="blog_20161214_1_1145312" name="code" class="javascript">Page(

  • 微信小程序Page中data数据操作和函数调用方法

    Page() 函数用来注册一个页面.接受一个 object 参数,其指定页面的初始数据.生命周期函数.事件处理函数等. //index.js Page({ data: { text: "This is page data.", sliderOffset: 0, sliderLeft: 0, state:{ genre:[], genre_index: 0, model:[], model_index: 0, terminalStatus:'', } }, onLoad: functio

  • 微信小程序 功能函数小结(手机号验证*、密码验证*、获取验证码*)

    下面一小段代码给大家介绍微信小程序 功能函数 密码验证*,具体代码如下所示: //登录输入密码 userPasswordInput: function (e) { var that = this; this.setData({ userPassword: e.detail.value }) // console.log(e.detail.value.length) // console.log(e.detail.value); var value = e.detail.value var str

  • 详解微信小程序Page中data数据操作和函数调用

    微信小程序Page中data数据获取和设置 一.Page中data数据的获取和设置:        1.设置data数据 this.setData(object) setData() 参数格式:接受一个对象,以 key,value 的形式表示将 this.data 中的 key 对应的值改变成 value.其中 key 可以非常灵活,以数据 路径的形式给出,如 array[2].message,a.b.c.d,并且不需要在 this.data 中预先定义. this.setData({ ; en

  • 详解如何使用微信小程序云函数发送短信验证码

    其实微信小程序前端和云端都是可以调用短信平台接口发送短信的,使用云端云函数的好处是无需配置域名,也没有个数限制. 本文使用的是榛子云短信平台(http://smsow.zhenzikj.com) ,SDK下载: http://smsow.zhenzikj.com/doc/sdk.html 1.安装 下载后的SDK在cloudfunctions文件夹下会包含3个云函数文件夹,如下: 由于目前IDE没有云函数导入功能,您需要手工创建同名的云函数,然后将云函数下的文件手工拷进去 注:下载的SDK是一个

随机推荐