--使用来自不同页面的函数

函数写在util.js页面

function formatTime(date) {var year = date.getFullYear()var month = date.getMonth() + 1var day = date.getDate()var hour = date.getHours()var minute = date.getMinutes()var second = date.getSeconds()return [year, month, day].map(formatNumber).join('/') + ' ' + [hour, minute, second].map(formatNumber).join(':')
}function formatNumber(n) {n = n.toString()return n[1] ? n : '0' + n
}
module.exports = {formatTime: formatTime,
}

使用函数

使用相同页面的函数

get_productInformation: function () {。。。。},
getZones:function(){this.get_productInformation},

使用app.js内定义的函数

app.js代码

//app.js
App({onLaunch: function() {//调用API从本地缓存中获取数据var logs = wx.getStorageSync('logs') || []logs.unshift(Date.now())wx.setStorageSync('logs', logs)},get_a_test:function(){console.log('this is a test')},getUserInfo: function(cb) {var that = thisif (this.globalData.userInfo) {typeof cb == "function" && cb(this.globalData.userInfo)} else {//调用登录接口wx.getUserInfo({withCredentials: false,success: function(res) {that.globalData.userInfo = res.userInfotypeof cb == "function" && cb(that.globalData.userInfo)}})}},globalData: {userInfo: null,college_change:false}
})

在其他页面中使用

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

App()含义:
注册一个小程序
小程序的入口方法
例如:

app.js
App({
  onLaunch: function(options) {
    console.log("onLaunch");
  },
  onShow: function(options) {
      console.log("onShow");
      // Do something when show.
  },
  onHide: function() {
      console.log("onHide");
      // Do something when hide.
  },
  onError: function(msg) {
      console.log(msg)
  },
  test:function() {
    console.log("I am func from App.js");
  },
  globalData: {
    userInfo:null,
    helloFromApp:'Hello,I am From App.js'
  }
})

在其他子页面如何使用呢?

demo.js
var app = getApp();
console.log(app.globalData.helloFromApp); // 调用全局变量
app.test(); // 调用全局方法

我们发现,全局变量和全局方法都被调用了。

通过getApp获取全局对象,然后进行全局变量和全局方法的使用。

注意:
App() 必须在 app.js 中注册,且不能注册多个。
不要在定义于 App() 内的函数中调用 getApp() ,使用 this 就可以拿到 app 实例。

this.globalData.userInfo = res.userInfo
1.
不要在 onLaunch 的时候调用 getCurrentPages(),此时 page 还没有生成。

微信小程序使用函数的三种方法相关推荐

  1. 抓取微信小程序数据包的三种方法

    前言 做安全测试的都会遇到测试某微信小程序,而微信小程序基本都是基于HTTPS的,所以抓取HTTPS数据包就是最关键的一步.最近几天折腾了一下,整理了比较简单.方便的三种方法. 条件 抓取微信小程序数 ...

  2. 微信小程序页面跳转(三种方法)

    方法1 对标签绑定点击事件 <view bindtap="clickMe" data-nid="123" data-name="SD" ...

  3. 微信小程序调用时间的三种方法

    1.更改后端时间戳 //wxml<wxs module="Formater" src="../../../utils/Datetime.wxs">& ...

  4. 外部web端访问微信小程序云数据库的几种方法

    前言 我当前的项目是小程序开发,使用的是云开发方式,那么这时涉及到了小程序端提交的数据会保存到云数据库中,可是呢这些个数据要被外部访问用来管理,也就是还得弄一个管理后台界面管理这些数据.那就需要拿到云 ...

  5. 微信小程序开发流程的两种方法科普

    现在微信小程序早已渗透我们日常生活的方方面面,很多商家看到了小程序带来的巨大流量,也想开发一个自己的小程序.所以今天就跟大家科普下微信小程序开发流程,你会发现这个开发过程其实非常简单. 1. 在微信公 ...

  6. 小程序发布上线流程_微信小程序开发流程的两种方法科普

    现在微信小程序早已渗透到我们日常生活的方方面面,很多商家看到了小程序带来的巨大流量,也想开发一个自己的小程序.所以今天就跟大家科普下微信小程序开发流程,你会发现这个开发过程其实非常简单. 1. 在微信 ...

  7. 微信小程序---页面刷新的几种方法

    话不多说,首先附上两个链接,表示感谢: 微信小程序如何刷新当前界面 微信小程序----返回上一页刷新或当前页刷新 要解决的问题:如下图所示,当点击立即借书成功之后,把请求回来的数据中的借书单数量显示到 ...

  8. 微信小程序页面跳转三种方式

    为了不让用户在使用小程序时造成困扰,微信小程序规定页面路径只能是五层,请尽量避免多层级的交互方式. 页面跳转的话就涉及到了多个页面层级 第一种:wx.navigateTo(OBJECT) 保留当前页面 ...

  9. 解决微信小程序图片延迟加载(四种方法)

    实现延迟加载的方法 1:通过监听滚动条滑动事件,判断元素距离页面顶部的距离是否小于等于页面的可视高度 Page({data: {realScrollTop: 0,//页面滚动距离driveHeight ...

最新文章

  1. TensorFlow集成TensorRT环境配置
  2. 经典C语言程序100例之七一
  3. 腐蚀和膨胀(erode and dilate)
  4. 【C++】【一日一练】读写文件小实例【20140510】
  5. 2018级软件秋季总结
  6. 在idea中创建mybatis-config.xml模板(在idea中创建mybatis核心配置文件模板)
  7. Java 1.1.1字符串之子串
  8. 【ML】理解偏差和方差,过拟合和欠拟合
  9. 对缓存的思考——提高命中率
  10. 从零开始学android编程_从零开始学机械,如何画好一张零件图?图文详解!-UG编程...
  11. 机器智能正在代替人类做的5件事
  12. python多线程模块threading学习笔记(5)之锁Lock
  13. 设计模式之禅【门面模式】
  14. 计算机考试音乐怎么粘贴,用手机或电脑怎样剪切和接音乐?
  15. 【Web技术】一文吃透 WebSocket 原理
  16. java获取pdf文件首页图片,用来当做封面
  17. 基于一阶中心差商公式计算出生人口增长率
  18. C#学习笔记(更新中)
  19. AC695x学习笔记(1): 简介
  20. 2018 ICML | Junction Tree Variational Autoencoder for Molecular Graph Generation

热门文章

  1. 计算合式公式(wff) 【让你的离散作业变的更轻松】
  2. 作为程序员的硬实力是什么 ?
  3. Kylin源码解析——从CubingJob的构建过程看Kylin的工作原理
  4. 【2019 NWERC - E】Expeditious Cubing 【★】
  5. 曲线拟合(2)——Richards曲线
  6. ultrascale学习笔记之remoteproc启动R5
  7. HTML+CSS学习笔记(篇幅较大)
  8. 多用户MIMO在移动通信系统中的应用
  9. Microsoft SQL Server Reporting Services 初探
  10. python判断手机号运营商_基于python的-使用正则表达式验证手机号并匹配运营商和所述地域...