溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

小程序中生成小程序碼的方法

發(fā)布時(shí)間:2021-01-13 10:45:28 來源:億速云 閱讀:279 作者:小新 欄目:移動(dòng)開發(fā)

小編給大家分享一下小程序中生成小程序碼的方法,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

導(dǎo)語:

小程序是一種不需要下載安裝即可使用的應(yīng)用,它實(shí)現(xiàn)了應(yīng)用“觸手可及”的夢(mèng)想,用戶掃一掃或者搜一下即可打開應(yīng)用。也體現(xiàn)了“用完即走”的理念,用戶不用關(guān)心是否安裝太多應(yīng)用的問題。應(yīng)用將無處不在,隨時(shí)可用,但又無需安裝卸載。

那么在小程序中,如何生成小程序碼?雖然小程序目前可以分享到朋友圈了的,但小程序碼的傳播無論是直接分享給好友,還是作為圖片分享,或是作為線下掃碼入口,都是引流的一種重要的入口。

實(shí)例效果:

小程序中生成小程序碼的方法

小程序中生成小程序碼的方法

具體實(shí)現(xiàn):

小程序端代碼,在view元素上綁定事件

<view bindtap="onViewTap">小程序碼</view>

小程序端邏輯代碼

Page({
  data: {},
  // 綁定的點(diǎn)擊事件函數(shù)
  onViewTap() {
    this.createQrCode(); // 調(diào)用生成小程序碼
  },

  // 生成小程序碼
  createQrCode() {
    this.showLoading();
    wx.cloud
      .callFunction({
        // 請(qǐng)求云函數(shù)
        // 云函數(shù)getQrCode
        name: 'getQrCode',
      })
      .then((res) => {
        console.log(res);
        const fileId = res.result;
        wx.previewImage({
          // 小程序碼,生成后直接預(yù)覽,前臺(tái)展示
          urls: [fileId],
          current: fileId,
        });
        this.hideLoading();
      });
  },

  // toast生成中
  showLoading() {
    wx.showLoading({
      title: '正在生成中...',
      icon: 'none',
    });
  },

  hideLoading() {
    wx.hideLoading();
  },
});

在小程序端就上面幾行代碼

云函數(shù)端實(shí)現(xiàn)代碼

在cloudFunctions文件夾下創(chuàng)建getQrCode云函數(shù),會(huì)默認(rèn)創(chuàng)建config.json,index.js,package.json三個(gè)文件

其中config.json內(nèi)為

{
  "permissions": {
    "openapi": [
      "wxacode.getUnlimited"
    ]
  }
}

上面的是利用wxacode.getUnlimited生成小程序碼的配置,這個(gè)配置是固定的

而index.js中如下代碼

// 云函數(shù)入口文件
const cloud = require('wx-server-sdk');

cloud.init();

// 云函數(shù)入口函數(shù)
exports.main = async (event, context) => {
  const wxContext = cloud.getWXContext(); // 獲取上下文
  const result = await cloud.openapi.wxacode.getUnlimited({
    // 調(diào)用生成小程序碼的接口,攜帶一些參數(shù),例如:scene
    scene: wxContext.OPENID,
  });
  // console.log(result)
  const upload = await cloud.uploadFile({
    // 生成的小程序碼上傳到云存儲(chǔ)中
    cloudPath: 'qrcode/' + Date.now() + '-' + Math.random() + '.png', // 生成的小程序碼存儲(chǔ)到云存儲(chǔ)當(dāng)中去,路徑
    fileContent: result.buffer,
  });
  return upload.fileID; // 返回文件的fileID,也就是該圖片
};

生成小程序碼就是上面幾行簡單的云函數(shù)代碼就可可以實(shí)現(xiàn),主要是利用wxacode.getUnlimited這個(gè)接口

獲取小程序碼,適用于需要的碼數(shù)量極多的業(yè)務(wù)場景。通過該接口生成的小程序碼,永久有效,數(shù)量暫無限制

以上是“小程序中生成小程序碼的方法”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI