前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >微信小程序使用export和import

微信小程序使用export和import

作者头像
青年码农
发布2020-11-19 15:05:20
4.1K0
发布2020-11-19 15:05:20
举报
文章被收录于专栏:青年码农青年码农

小程序支持模块化开发,可以将一些公共的代码抽离成为一个单独的 js 文件,作为一个模块。模块只有通过 module.exports 或者 exports 才能对外暴露接口。引入模块通过require方式。

创建模块

代码语言:javascript
复制
function sayHello(name) {
  console.log(`Hello ${name} !`)
}
function sayGoodbye(name) {
  console.log(`Goodbye ${name} !`)
}

module.exports.sayHello = sayHello
exports.sayGoodbye = sayGoodbye

引入模块

代码语言:javascript
复制
var common = require('common.js')
Page({
  helloMINA: function() {
    common.sayHello('MINA')
  },
  goodbyeMINA: function() {
    common.sayGoodbye('MINA')
  }
})

这是官方提供的方法,我个人还是比较喜欢使用export和import,使用起来比较顺手,可能是因为我一直用Vue开发的原因,下面拿一个实际例子,讲一讲export和import。

最近在开发的一个小程序项目,打算使用Promise对API这块做下封装,统一管理API请求。

新建request.js,提取公共请求路径

代码语言:javascript
复制
// 公共路径
const path = "http://172.16.50.83:82"

定义promise化接口

代码语言:javascript
复制
/**
 * promise化接口
 */
function wxRequest(url, method, params) {
  return new Promise((resolve, reject) => {
    wx.request({
      url: path + url,
      method: method,
      data: params,
      header: {
        'content-type': 'application/json'
      },
      success: res => resolve(res),
      fail: res => reject(res)
    })
  });
}

登录接口

代码语言:javascript
复制
function login(params = {}) {
  return wxRequest('/wechatuser', 'post', params);
}

导出

代码语言:javascript
复制
// 导出
module.exports = {
  login
}

上面这些代码都在一个文件中,完整代码就不展示了。

接下来就是导入新建接口文件,

代码语言:javascript
复制
import {login} from '../../api/request'

调用

代码语言:javascript
复制
login().then(res=>{
  console.log(res)
})

注意一点的是,在引入模块时,要使用相对路径,如果使用绝对路径,在编译后会导致文件找不到。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-11-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 青年码农 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云开发 CloudBase
云开发(Tencent CloudBase,TCB)是腾讯云提供的云原生一体化开发环境和工具平台,为200万+企业和开发者提供高可用、自动弹性扩缩的后端云服务,可用于云端一体化开发多种端应用(小程序、公众号、Web 应用等),避免了应用开发过程中繁琐的服务器搭建及运维,开发者可以专注于业务逻辑的实现,开发门槛更低,效率更高。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档