一个小程序页面由四个文件组成,一个小程序页面的四个文件具备相同路径与文件名,由此咱们可知一个小程序页面对应着一个跟页面同名的js文件。但是当有些公共方法,咱们想抽离出来成为一个独立公共的js文件。咱们该如何实现呢。小程序
在根目录下有一个app.js文件。这个根目录的js 文件咱们能够经过getApp()轻松调用。app
2. 5.1.//app.jsApp({ 3.globaData:'huangenai' 4.})//test.js 6.var app = getApp(); 7.Page({ 8.onLoad: function () { 9.console.log(app.globaData); 10.} 11.})
在开发者工具的 Console能够看到工具
那么当一些通用的公共方法咱们抽出来,在根目录下有个utils文件夹(没有的话新建),里面util.js(没有的话新建)在这里咱们能够将通用的方法写在这。测试
2. 8. 17.1.util.js//正则判断 3.function Regular(str, reg) { 4.if (reg.test(str)) 5.return true; 6.return false; 7.}//是否为中文 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.}//最下面必定要加上你自定义的方法(做用:将模块接口暴露出来),不然会报错:util.trim is not a function; 18.module.exports = { 19.IsChinese: IsChinese, 20.trim: trim 21.}
2.1.//test.jsvar util = require('../../utils/util.js'); 3.Page({ 4.onLoad: function () { 5.console.log("判断是否为中文:"+util.IsChinese('测试')); 6.console.log("去除左右空格:" + util.trim(s)); 7.} 8.})
在开发者工具的 Console能够看到ui
注意了,在util.js里的 Regular()方法,咱们不能够这样调用util.Regular(),由于咱们没有用 module.exports 来暴露模块接口code
若是直接 调用则会出现这样的错误blog
1.thirdScriptError 2.util.Regular is not a function;at "pages/test/test" page lifeCycleMethod onLoad function 3.TypeError: util.Regular is not a function