小程序开发我们会遇到需要定义函数的情况,如果没有正确定义函数,在调用时会出现‘not defined’ 的情况。
一般情况下我们有需要定义函数的几种情况
这种情况需要注意的是应该在 page({...})在外部定义,然后在相关的生命周期函数中使用
如:
//在Page定义的外部
function test(param) {
  console.log(param)
}
Page({
  /**
   * 页面的初始数据
   */
  data: {
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
      //在onLoad中调用
      test("Hello")
  
  },
App.js中定义这种一般是一些全局方法
如:
App({
      
      test :function(param) {
            console.log(param)
      }
})
使用方式:
注意:使用app.js中定义的方法或属性时,必须先获取全局变量var app = getApp()
ar app = getApp()
 
Page({
 
  .....
 
  testA: function(even) {
 
    // 方法2 调用在app.js中的封装方法
    app.test("a")
  }
})
这个一般是给所有页面使用,作为公共库
在自定义的工具类文件中定义方法,然后在需要使用的文件中调用。如在util.js文件中定义,然后在xxx.js中使用。
注意:在util.js中定义的方法,需要通过module.exports={xxxMethord: xxxMethord}公开暴露出来,否则被调用时识别不出来会出现;
同时,在xxx.js文件中使用时,需要通过require("路径/util.js")导入util.js文件,再进行调用。
module.exports = {
  test: test
}
 
// 请求方法
function test(param) {
     console.log(param)
}
使用的时候注意好 require("路径/util.js"), 路径一定要正确, 否则会报"module xxx is not defined"等错误
原文:https://www.cnblogs.com/limaostudio/p/13725098.html