微信小程序工具类

Posted richard1015

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了微信小程序工具类相关的知识,希望对你有一定的参考价值。

wechat-common-sdk ?

场景:目前工作中的项目需要包含并使用另一个项目。 也许是第三方库,或者你独立开发的,用于多个父项目的库。 现在问题来了:你想要把它们当做两个独立的项目,同时又想在一个项目中使用另一个。

我们举一个例子。 假设你正在开发一个网站然后创建了 Atom 订阅。 你决定使用一个库,而不是写自己的 Atom 生成代码。 你可能不得不通过 CPAN 安装或 Ruby gem 来包含共享库中的代码,或者将源代码直接拷贝到自己的项目中。 如果将这个库包含进来,那么无论用何种方式都很难定制它,部署则更加困难,因为你必须确保每一个客户端都包含该库。 如果将代码复制到自己的项目中,那么你做的任何自定义修改都会使合并上游的改动变得困难。

Git 通过子模块来解决这个问题。 子模块允许你将一个 Git 仓库作为另一个 Git 仓库的子目录。 它能让你将另一个仓库克隆到自己的项目中,同时还保持提交的独立。

##wechat-common-sdk有哪些功能?

  • Interface 小程序公用接口类
  • HttpUtil 小程序http请求类
  • CanvasUtil 小程序 canvas工具类

使用方法

  1. git submodule add https://github.com/richard1015/wechat-common-sdk.git
  2. 在小程序app.js 根目录加入初始化代码
  //app.js
import common from "./wechat-common-sdk/common.js";
var util = require("./utils/util.js");
App({
  commonSdk: {},
  onLaunch: function() {
    var self = this
    console.log(App Launch)
    self.util = util;
    self.commonSdk = common.init({
      // host:‘http://192.168.160.58:8059/‘,
      source: 7 //7.汇率计算器
    });

    //获取openId
    wx.login({
      success: function(data) {
        let {
          code
        } = data;
        self.commonSdk.Interface.getUserOpenId(code).then(res => {
          if (res.State == 0) {
            wx.setStorage({
              key: openid,
              data: res.Value
            })
          }
        });
      }
    });
  },
  onShow: function() {
    console.log(App Show)
  },
  onHide: function() {
    console.log(App Hide)
  }
}) 
// pages/addCurrency/addCurrency.js
let {
  commonSdk,
  util
} = getApp();
Page({
 
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function(options) {
    var self = this;
    //获取币种接口
    commonSdk.HttpUtil.post("exchange/currency", {
      openId: util.getOpenId(),
      needRmb: true
    }).then((res) => {
      if (res.State == 0) {
        console.log(res)
        let exist = [],
          array = [];
        res.Value.forEach(item => {
          if (item.isExist == 1) {
            exist.push(item)
          } else {
            array.push(item)
          }
        })
        self.setData({
          exist,
          array,
          oldArray: array
        });
      }
    });
  }
})

以上是关于微信小程序工具类的主要内容,如果未能解决你的问题,请参考以下文章

微信小程序工具类

微信小程序视图层WXML_模板

7-微信小程序 模板(template)

微信小程序怎么只留一个

vscode 开发微信小程序环境配置

微信小程序 - Util工具类实现