微信小程序中,在微信官方开发文档我们可以知道 小程序的目录结构 。
一个小程序页面由四个文件组成,一个小程序页面的四个文件具有相同路径与文件名,由此我们可知一个小程序页面对应着一个跟页面同名的js文件。可是当有些公共方法,我们想抽离出来成为一个独立公共的js文件。我们该如何实现呢。
在根目录下有一个app.js文件。这个根目录的js 文件我们可以通过getApp()轻松调用。
//app.js
App({
globaData:'huangenai'
})
//test.js
var app = getApp();
Page({
onLoad: function () {
console.log(
app.globaData);
}
})
在开发者工具的 Console可以看到
那么当一些通用的公共方法我们抽出来,在根目录下新建一个utils文件夹,新建util.js在这里我们可以将通用的方法写在这。
util.js
//正则判断
function Regular(str, reg) {
if (reg.test(str))
return true;
return false;
}
//是否为中文
function IsChinese(str) {
var reg = /^[\u0391-\uFFE5] $/;
return Regular(str, reg);
}
module.exports = {
getRequestUrl: "http://localhost:59637",//获得接口地址
IsChinese: IsChinese,
}
//test.js
var util = require('../../utils/util.js');
Page({
onLoad: function () {
console.log("判断是否为中文:" util.IsChinese('测试'));
console.log("输出接口url:" util.getRequestUrl);
}
})
在开发者工具的 Console可以看到
注意了,在util.js里的 Regular()方法,我们不可以这样调用util.Regular(),因为我们没有用
module.exports
来暴露模块接口
如果直接 调用则会出现这样的错误
thirdScriptError
util.Regular is not a function;at "pages/test/test" page lifeCycleMethod onLoad function
TypeError: util.Regular is not a function