小程序雲開發基礎和訂閱消息

小程序雲開發

項目的三大板塊

數據庫
存儲
雲函數

數據庫

通過 wx.cloud.database().collection("list") 來導入數據庫
對數據的增刪改查 
增: 需要通過e..detail.value來獲取增加的數據,通過data值來接收增加的數據,之後調用成功失敗的回調. 自動將數據保存到數據庫
刪:通過doc傳遞id,調用remove方法
改:通過doc傳遞id,調用update方法.通過data值來修改原有的數據
查:調用get方法

存儲

存儲指所有文件的存儲,且拿圖片爲例
wx.chooseImage({
      count: 1,
      sizeType: ['original', 'compressed'],
      sourceType: ['album', 'camera'],
      success: res => {  // 這裏使用箭頭函數,可以解決調用雲函數上傳數據的this執行問題
        console.log('上傳圖片', res.tempFilePaths[0])
        this.upLoadImg(res.tempFilePaths[0])
      }
    })
 
 upLoadImg(fileURL) {
    wx.cloud.uploadFile({
      cloudPath: new Date().getTime() + 'qq.png', // 上傳至雲端的路徑 加一個時間戳
      filePath: fileURL, // 小程序臨時文件路徑
      success: res => {
        // 返回文件 ID
        console.log('上傳圖片的id', res.fileID)
        this.setData({
          imgURL: res.fileID // 將數據通過賦值的形式,渲染到頁面
        })
      },
      fail: console.error
    })
  },

雲函數

1. 初步使用:在app.js初始化
 // 雲函數端初始化
    wx.cloud.init({
      env: 'dev-yyy-a5xlr'
    })

2. 在project.config.json 添加配置項
"cloudfunctionRoot": "/cloud",

3. 然後新建雲函數文件

4. 雲函數的修改每次都要上傳和部署

訂閱消息的實現

用戶授權

訂閱消息實現的前提,是用戶提前授權

wx.requestSubscribeMessage({
      tmplIds: ['f0cH3FrHH02tE8YcEixva09B-BkdYYDISid1YmstQP4'],
      success: res => {
        console.log('授權成功', res)
      },
      fail: res => {
        console.log('授權失敗', res)

      }
    })

訂閱消息模板

// 雲函數入口函數
exports.main = async (event, context) => {
  try {
const result = await cloud.openapi.subscribeMessage.send({
  touser: event.openid, // 動態openid,如果想羣體發送模板,就傳入多個openid
  page:'pages/index/index',
  data:{
  thing1: {
  value: event.nameP // 動態數據
},
date3:{
  value:'2020年3月23日 16:40'
},
thing4: {
  value:'錢已經到賬'
}
  },
  templateId: 'f0cH3FrHH02tE8YcEixva09B-BkdYYDISid1YmstQP4'
})
console.log(result)
return result
  }
  catch (err) {
console.log(err)
return err
  }
}

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章