wechat-common-sdk ?
場景:目前工作中的項目需要包含并使用另一個項目。 也許是第三方庫,或者你獨立開發的,用于多個父項目的庫。 現在問題來了:你想要把它們當做兩個獨立的項目,同時又想在一個項目中使用另一個。
我們舉一個例子。 假設你正在開發一個網站然后創建了 Atom 訂閱。 你決定使用一個庫,而不是寫自己的 Atom 生成代碼。 你可能不得不通過 CPAN 安裝或 Ruby gem 來包含共享庫中的代碼,或者將源代碼直接拷貝到自己的項目中。 如果將這個庫包含進來,那么無論用何種方式都很難定制它,部署則更加困難,因為你必須確保每一個客戶端都包含該庫。 如果將代碼復制到自己的項目中,那么你做的任何自定義修改都會使合并上游的改動變得困難。
Git 通過子模塊來解決這個問題。 子模塊允許你將一個 Git 倉庫作為另一個 Git 倉庫的子目錄。 它能讓你將另一個倉庫克隆到自己的項目中,同時還保持提交的獨立。
##wechat-common-sdk有哪些功能?
- Interface 小程序公用接口類(此接口需和后臺api配合使用)
- HttpUtil 小程序http請求類
- 1.get 請求
- 2.post 請求
- CanvasUtil 小程序 canvas工具類
- 1.canvas 文本換行計算
- 2.圖片裁剪畫圓
- 3.繪制圓角矩形
- 自動統一授權入口
- 默認開啟,如果用戶未授權,則跳入公用授權頁面
使用方法
- 進入項目根路徑 執行git submodule add github.com/richard1015…
- 更新已存在 submodule 子模塊時 需執行 ,否則項目中wechat-common-sdk 文件夾內容為空
- 1.git submodule init
- 2.git submodule update
- 3.app.json 中加入 統一授權路徑頁面 "wechat-common-sdk/pages/auth"
//app.js
import common from "./wechat-common-sdk/common.js";
var util = require("./utils/util.js");
App({commonSdk: {},onLaunch: function() {var self = thisconsole.log('App Launch')self.util = util;self.commonSdk = common.init({// host:'http://192.168.1.128:18888/',source: 7, //7.匯率計算器redirect: "/pages/index/index"//授權成功回調地址});},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: commonSdk.openid,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});}});}
})
復制代碼