文件作用域

// app.js
App({globalData: 1
})
// a.js
// The localValue can only be used in file a.js.
var localValue = 'a'
// Get the app instance.
var app = getApp()
// Get the global data and change it.
app.globalData++
// b.js
// You can redefine localValue in file b.js, without interference with the localValue in a.js.
var localValue = 'b'
// If a.js it run before b.js, now the globalData shoule be 2.
console.log(getApp().globalData)

模块化

可以将一些公共的代码抽离成为一个单独的 js 文件,作为一个模块。模块只有通过 module.exports 或者 exports 才能对外暴露接口。

// common.js
function sayHello(name) {console.log(`Hello ${name} !`)
}
function sayGoodbye(name) {console.log(`Goodbye ${name} !`)
}module.exports.sayHello = sayHello
exports.sayGoodbye = sayGoodbye

在需要使用这些模块的文件中,使用 require(path) 将公共代码引入

var common = require('common.js')
Page({helloMINA: function() {common.sayHello('MINA')},goodbyeMINA: function() {common.sayGoodbye('MINA')}
})

tip: require 暂时不支持绝对路径

小程序作用域与模块化相关推荐

  1. 微信小程序笔记六模块化 —— module.exports

    微信小程序中所有 js 文件作用域皆为独立的,每一个 js 文件即为一个模块.模块与模块之间的引用通过 module.exports 或 exports 对外暴露接口. 注意: exports 是 m ...

  2. 微信小程序开发实战——模块化

    JavaScript模块规范 在任何一个大型应用中模块化是很常见的,与一些更传统的编程语言不同的是,JavaScript (ECMA-262版本)还不支持原生的模块化. Javascript社区做了很 ...

  3. 微信小程序module.exports 模块化

    模块化 可以将一些公共的代码抽离成为一个单独的 js 文件,作为一个模块.模块只有通过 module.exports 或者 exports 才能对外暴露接口. 需要注意的是: exports 是 mo ...

  4. 微信小程序App Page 模块化

    微信小程序注册函数App() 在app.js里是一个App()函数,定义全局函数和数据,还可以用来注册一个微信小程序.在App()函数里有一些生命周期函数 App({onLaunch(option){ ...

  5. 微信小程序开发之——模块化

    一 概述 可以将一些公共的代码抽离成为一个单独的 js 文件,作为一个模块 模块只有通过 module.exports 或者 exports 才能对外暴露接口 在需要使用这些模块的文件中,使用 req ...

  6. 微信小程序之js模块化

    文章目录 js模块化 模块化操作 引用模块化的js 引入外部JS js模块化 可以将通用的js抽取出来,放到一个js文件中,对外提供一个被调用的方法名 引入使用的js使用require引入公用的js文 ...

  7. douphp mysql版本_【公众号+小程序】DouPHP模块化企业网站管理系统版本号v1.6 – 最新版本 无后门 亲测...

    源码亲测可用 源码亲测可用 源码亲测可用 源码简介 更新日志 将背景更改为响应式布局,支持手机的后台管理:前景也更改为响应式布局,并且默认情况下关闭了独立移动版本(可以在系统设置中打开) douphp ...

  8. 【微信小程序】CSS模块化、使用缓存在本地模拟服务器数据库

  9. 微信小程序开发 | 小程序开发框架

    小程序开发框架 7.1 小程序模块化开发 7.1.1 模块 7.1.2 模板 7.1.3 自定义组件 7.1.4插件 7.2 小程序基础样式库-WeUI 7.2.1 初识WeUI 7.2.2[案例]电 ...

最新文章

  1. 如何重新创建mysql数据库_重新创建数据库与数据表《 MySQL 基础 》
  2. php 静态类在worker,GatewayWorker的Events.php中调用Worker::runAll()出现异常
  3. 2014年 第5届 蓝桥杯 Java B组 省赛解析及总结
  4. 《聚爆Implosion》性能精析:这是我们测过性能最棒的手游
  5. 英语笔记3(git)
  6. 【送书】2021年哪些好书值得读(小姐姐配音)
  7. LeetCode算法入门- Remove Duplicates from Sorted Array -day21
  8. 从《硅谷传奇》看微软和苹果
  9. 服务器appcrash的问题怎么修复,启动不了,提示问题事件名称:APPCRASH···的解决方案...
  10. (转) 咖啡猫的至理名言
  11. 七周成为数据分析师 | 统计学
  12. 数数小绵羊(四刷) kkmd66
  13. 使用建造者模式做一个密室逃脱类游戏
  14. GD32F4xx控制DGUS触控按键
  15. mysql 连接tidb 端口_tidb安装和连接
  16. [NOI2005] 月下柠檬树 (自适应辛普森积分)
  17. CentOS7克隆虚拟机需要修改的配置
  18. 征信衍生规则中的逾期强变量都有哪些?
  19. 微软校招来喽 | 内推名额等待优秀的你
  20. 计算机设备管理器没有网络适配器,设备管理器没有网络适配器,小编教你Win7设备管理器中没有网络适配器如何恢复...

热门文章

  1. c++11 std::bind与std::function
  2. vs下使用qt设置应用程序的图标
  3. 面试题 02.03. 删除中间节点
  4. Netsparker超轻量级Web安全漏洞扫描工具使用教程介绍
  5. dva源码解析(一)
  6. memcache两种客户端比较
  7. 住建部副部长:“限购”政策迟早要退出
  8. 将 Shiro 作为应用的权限基础 三:基于注解实现的授权认证过程
  9. 岁末年初3Q大战惊现高潮,360震撼推出Android 3Q IM即时通讯
  10. 软件测试面试 (二) 如何测试网页的登录页面