用户
 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,登录网站

小程序社区 首页 教程 新手教程 查看内容

微信小程序--引用公共js里的方法

Rolan 2017-8-17 00:37

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

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

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

  1. //app.js
  2. App({
  3. globaData:'huangenai'
  4. })
  5. //test.js
  6. 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: trim
  21. }
  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. thirdScriptError
  2. util.Regular is not a function;at "pages/test/test" page lifeCycleMethod onLoad function
  3. TypeError: util.Regular is not a function
鲜花
鲜花
鸡蛋
鸡蛋 (1)

刚表态过的朋友 (1 人)

分享至 : QQ空间
收藏
原作者: PHP急先锋 来自: 博客园

相关阅读