一个小程序页面由四个文件组成,一个小程序页面的四个文件具有相同路径与文件名,由此我们可知一个小程序页面对应着一个跟页面同名的js文件。可是当有些公共方法,我们想抽离出来成为一个独立公共的js文件。我们该如何实现呢。

在根目录下有一个app.js文件。这个根目录的js 文件我们可以通过getApp()轻松调用。

1.//app.js2.App({3.globaData:'huangenai'4.})​​​​​​​5.//test.js6.var app = getApp();7.Page({8.onLoad: function () {9.console.log(app.globaData);10.} 11.})

在开发者工具的 Console可以看到

那么当一些通用的公共方法我们抽出来,在根目录下有个utils文件夹(没有的话新建),里面util.js(没有的话新建)在这里我们可以将通用的方法写在这。

1.util.js​​​​​​​2.//正则判断3.function Regular(str, reg) {4.if (reg.test(str))5.return true;6.return false;7.}​​​​​​​8.//是否为中文9.function IsChinese(str) {10.var reg = /^[\u0391-\uFFE5]+$/;11.return Regular(str, reg);12.}13.//去左右空格;14.function trim(s){15.return s.replace(/(^\s*)|(\s*$)/g, "");16.}​​​​​​​17.//最下面一定要加上你自定义的方法(作用:将模块接口暴露出来),否则会报错:util.trim is not a function;18.module.exports = {19.IsChinese: IsChinese,20.trim: trim21.}
1.//test.js​​​​​​​2.var util = require('../../utils/util.js');3.Page({4.onLoad: function () {5.console.log("判断是否为中文:"+util.IsChinese('测试'));6.console.log("去除左右空格:" + util.trim(s));7.}8.})

在开发者工具的 Console可以看到

注意了,在util.js里的 Regular()方法,我们不可以这样调用util.Regular(),因为我们没有用 module.exports 来暴露模块接口

如果直接 调用则会出现这样的错误

1.thirdScriptError2.util.Regular is not a function;at "pages/test/test" page lifeCycleMethod onLoad function3.TypeError: util.Regular is not a function

微信小程序开发—引用公共js里的方法相关推荐

  1. 微信小程序开发:使用字体图标的方法

    在微信小程序开发过程中,图标的使用是很常见很普遍的.一般情况下,在微信小程序项目的文件目录里面images里面,可以直接引用本地的图标文件,但是通过使用字体图标或者background设置背景图的时候 ...

  2. 在微信小程序中引用tensorflow.js坑向总结(一)

    各种坑 1. Error:No backend found in registry 2. Error: This application has not registered any plugins ...

  3. 问题:微信小程序开发之 --- app.js文件介绍

    App() App() 函数用来注册一个小程序.接受一个 object 参数(本质就是function 和 data),其指定小程序的生命周期函数等. object参数说明: 属性 类型 描述 触发时 ...

  4. 微信小程序封装独立公共js,其它页面调用

    //index.js var common = require("../../js/common.js"); Page({/*** 页面的初始数据*/data: {shidu: & ...

  5. 微信小程序开发之详解生命周期方法

    生命周期是指一个小程序从创建到销毁的一系列过程 在小程序中 ,通过App()来注册一个小程序 ,通过Page()来注册一个页面 先来看一张小程序项目结构 根目录下面有包含了app.js,app.wxs ...

  6. 微信小程序开发 Array对象的属性与方法

    Array属性: length 设置或返回数组中元素的个数 Array 方法: concat():连接两个或更多的数组,并返回结果 join():把数组的所有元素放入字符串,并用指定的分隔符进行分隔 ...

  7. 微信小程序开发页面无法显示,未注册报错

    微信小程序开发 VM507 WAService.js:2 Page "pages/post/post" has not been registered yet 在对应的js文件中检 ...

  8. node.js 微信小程序 部署服务器_微信小程序开发入门(一),Nodejs搭建本地服务器...

    1.  如何模拟真实环境中,读取服务端数据,首先需要使用Nodejs搭建一个本地服务器的环境. 在搭建web服务器之前,需要先安装node.js(安装版本最好为6.9.x) 安装后node.js,接下 ...

  9. 微信小程序开发日志——面向对象的JS编程

    微信小程序开发日志--面向对象的JS编程 前言 不知道有多少小伙伴和之前的我一样,微信小程序的js部分都是用面向过程的方式写的,最后的结果就是代码非常长,其实刚刚写完还好,自己也都清楚哪些部分是做什么 ...

最新文章

  1. Paxos分布式一致性算法简介和Apache ZooKeeper的概念映射
  2. 【工作经验分享】mysql备份恢复命令
  3. 统计学习方法的三要素
  4. Hadoop HDFS (3) JAVA訪问HDFS之二 文件分布式读写策略
  5. mysql的count报错_Mysql报错注入原理分析count、rand、groupby
  6. 两天学会css基础(一)
  7. Linux 线程占用CPU过高定位分析
  8. easy ui datagrid 中getSelections方法只能获取一行数据
  9. Python+Appium实现APP自动化测试
  10. 程序分身:根据不同程序名执行不同函数
  11. swift可选类型_Swift可选
  12. Chapter 5 : 索引和算法
  13. linux系统重装win10系统不用u盘,win10不用u盘怎么重装系统
  14. bzoj 3728 zarovik 买灯泡
  15. 微光集市-JWT和Token在本项目中的应用(版本5.0)
  16. Android中图片圆形设置三种方法介绍
  17. windows内核开发学习笔记十八:IRP 处理的标准模式
  18. GitHub在Markdown中插入仓库中的图片
  19. Electron使用electron-updater自动更新
  20. 【pytorch模型实现9】HAN_Attention

热门文章

  1. js 苹果手机点击事件 兼容
  2. C语言错误信息中文解释
  3. 组合导航初始对准(1)
  4. Activity 启动流程
  5. 线索二叉树的前序遍历
  6. 14 python虚拟变量的数据量化处理
  7. swoole - 简介
  8. swoole基础教程-2.入门
  9. 树梅派应用47:用树莓派给智能手机发送推送通知
  10. JVM虚拟机的理解(上)