国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Slog71_選取、上傳和顯示本地圖片GET ?。ㄎ⑿判〕绦蛑崎_(kāi)發(fā)-全棧時(shí)代3)

陳江龍 / 1020人閱讀

摘要:掘金主頁(yè)簡(jiǎn)書(shū)主頁(yè)道常無(wú)為而無(wú)不為開(kāi)發(fā)環(huán)境需要的信息和信息源小程序官方文檔小程序端文檔客戶端云端文檔服務(wù)端前言云開(kāi)發(fā)封裝好了一些常用的業(yè)務(wù)邏輯,提供了以下方面的相關(guān)供開(kāi)發(fā)者使用云函數(shù)數(shù)據(jù)庫(kù)存儲(chǔ)管理開(kāi)始編碼現(xiàn)在先把微信開(kāi)發(fā)工具更新至最新,有部

ArthurSlog

SLog-71

Year·1

Guangzhou·China

Sep 12th 2018

ArthurSlog Page

GitHub

NPM Package Page

掘金主頁(yè)

簡(jiǎn)書(shū)主頁(yè)

segmentfault

道常無(wú)為而無(wú)不為

開(kāi)發(fā)環(huán)境MacOS(High Sierra 10.13.5) 需要的信息和信息源:

小程序官方文檔

小程序端API文檔(客戶端)

云端API文檔(服務(wù)端)

前言

”云開(kāi)發(fā)“ 封裝好了一些常用的業(yè)務(wù)邏輯,提供了以下方面的相關(guān)API供開(kāi)發(fā)者使用:

云函數(shù)

數(shù)據(jù)庫(kù)

存儲(chǔ)管理

開(kāi)始編碼

現(xiàn)在先把微信開(kāi)發(fā)工具更新至最新(1.02.1809101),有部分開(kāi)發(fā)人員在微信社區(qū)反饋更新之后沒(méi)有看到“云開(kāi)發(fā)”的按鈕

解決辦法:點(diǎn)擊檢查更新,等待更新完全完成之后重啟開(kāi)發(fā)工具

重點(diǎn):云開(kāi)發(fā)方式需要appid,請(qǐng)準(zhǔn)備好

當(dāng)前云開(kāi)發(fā)模版的微信小程序文件結(jié)構(gòu)如下:

cloudfunctions
    | - login
          | - index.js
          | - package.json
          | - package-lock.json
          
    | - arthurSlog_getInfo
          | - index.js
          | - package.json
          | - package-lock.json

    | - arthurSlog_methodAdd
          | - index.js
          | - package.json
          | - package-lock.json
          
miniprogram
    | - images
           | - code-db-inc-dec.png
           | - code-db-onAdd.png
           | - code-db-onQuery.png
           | - code-db-onRemove.png
           | - code-func-sum.png
           | - console-entrance.png
           | - create-collection.png
    | - pages
           | - addFunction
                    | - addFunction.js
                    | - addFunction.json
                    | - addFunction.wxml
                    | - addFunction.wxss
           | - chooseLib
                    | - chooseLib.js
                    | - chooseLib.json
                    | - chooseLib.wxml
                    | - chooseLib.wsxx
           | - databaseGuide
                    | - databaseGuide.js
                    | - databaseGuide.json
                    | - databaseGuide.wxml
                    | - databaseGuide.wxss
           | - deployFunctions
                    | - deployFunctions.js
                    | - deployFunctions.json
                    | - deployFunctions.wxml
                    | - deployFunctions.wxss
           | - index
                    | - index.js
                    | - index.wxml
                    | - index.wxss
                    | - user-unlogin.png
           | - storageConsole
                    | - storageConsole.js
                    | - storageConsole.json
                    | - storageConsole.wxml
                    | - storageConsole.wxss
           | - userConsole
                    | - userConsole.js
                    | - userConsole.json
                    | - userConsole.wxml
                    | - userConsole.wxss
    | - style
           | - guide.wxss
    | - app.js
    | - app.json
    | - app.wxss

README.md
project.config.json

在使用“云開(kāi)發(fā)”的時(shí)候,需要先調(diào)用 初始化函數(shù) init

小程序端的初始化函數(shù)是 wx.cloud.init()

云端的初始化函數(shù)是 const cloud = require("wx-server-sdk") cloud.init())

Client:
miniprogram/app.js

//app.js
App({
  onLaunch: function () {
    
    if (!wx.cloud) {
      console.error("請(qǐng)使用 2.2.3 或以上的基礎(chǔ)庫(kù)以使用云能力")
    } else {
      wx.cloud.init({
        env: "arthurslog-test-d4537a",
        traceUser: true,
      })
    }

    this.globalData = {}
  }
})

Server:
cloudfunctions/arthurSlog_getInfo/index.js

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

cloud.init()

// 云函數(shù)入口函數(shù)
exports.main = async(event, context) => {
  return event.userInfo
}

上面的Server端代碼中

Server:
cloudfunctions/arthurSlog_getInfo/index.js

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

//cloud.init()

// 云函數(shù)入口函數(shù)
exports.main = async(event, context) => {
  return event.userInfo
}

沒(méi)有調(diào)用到 “wx-server-sdk” 的方法,所以可以注釋掉,不影響結(jié)果

這里提醒一下,就是 cloudfunctions 路徑下的文件的名稱,就是云端向小程序端提供的方法

舉個(gè)栗子:對(duì)于cloudfunctions/arthurSlog_getInfo來(lái)說(shuō),arthurSlog_getInfo這個(gè)文件夾的名字就是云端向小程序端提供的方法

現(xiàn)在在小程序端就可以參考小程序端API文檔(客戶端)

大部分函數(shù)都來(lái)源于 對(duì)象“wx”,這個(gè) “wx”對(duì)象 就類似于服務(wù)端的 “wx-server-sdk”對(duì)象

比如,在小程序端(客戶端)有 wx.cloud.callFunction()、wx.cloud.uploadFile()等方法

再比如,在云端(服務(wù)端)有 cloud.init()、cloud.database()、cloud.collection()等方法

現(xiàn)在,我們來(lái)接觸一下 “小程序·云開(kāi)發(fā)” 的 “存儲(chǔ)管理功能”

打開(kāi)小程序端的 miniprogram/pages/index/index.js

Client
miniprogram/pages/index/index.js

Page({
  data: {
    avatarUrl: "./user-unlogin.png",
    userInfo: {},
    logged: false,
    takeSession: false,
    requestResult: "",
    fileID: "",
    cloudPath: "",
    imagePath: "./user-unlogin.png",
  },

  // ...
  // ...
  // ...

  // 添加前端代碼,向云端上傳圖片
  arthurSlog_uploadImg: function() {
    // 選擇圖片
    const this_ = this
    wx.chooseImage({
      count: 1,
      sizeType: ["original", "compressed"],
      sourceType: ["album", "camera"],
      success(res) {
        // tempFilePath可以作為img標(biāo)簽的src屬性顯示圖片
        const tempFilePaths = res.tempFilePaths

        this_.setData({
          imagePath: tempFilePaths[0],
        })

        console.log(tempFilePaths[0])
      }
    })
  },
})

在這里,我們定義了一個(gè)方法arthurSlog_uploadImg,參考 小程序官方文檔

首先將當(dāng)前環(huán)境對(duì)象 映射 給對(duì)象 this_

Client
miniprogram/pages/index/index.js

const this_ = this

使用 wx.chooseImage 方法,打開(kāi)本地文件,選擇要上傳的文件

在success函數(shù)里,使用setdata函數(shù),更新 imagePath 對(duì)象的值,并使得頁(yè)面上對(duì)應(yīng)的部分重新渲染

現(xiàn)在,我們來(lái)更新頁(yè)面文件:

Client
miniprogram/pages/index/index.wxml




  

  
  
    
  

  
  
    
  

  
  
    
  
  
  
    
  

這次使用的方法,不需要自己編寫(xiě)云端服務(wù)代碼,騰訊公司已經(jīng)提供了

保存文件,在模擬器中點(diǎn)擊上傳圖片(我放了一張演示圖片在此路徑下:miniprogram/images/ArthurSlog.png)

選中要上傳的文件,點(diǎn)擊“打開(kāi)”

正常執(zhí)行之下,會(huì)顯示出我們剛剛上傳的圖片,到這里暫停一下,現(xiàn)在圖片還沒(méi)發(fā)送出去

在下一篇中,再繼續(xù)補(bǔ)充

至此,我們實(shí)現(xiàn)了一個(gè)選取本地文件,并顯示選中的圖片文件。

歡迎關(guān)注我的微信公眾號(hào) ArthurSlog

如果你喜歡我的文章 歡迎點(diǎn)贊 留言 謝謝

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/98035.html

相關(guān)文章

  • 程序全棧開(kāi)發(fā)時(shí)代

    摘要:整套功能是基于騰訊云全新推出的云開(kāi)發(fā)所研發(fā)出來(lái)的一套完備的小程序后臺(tái)開(kāi)發(fā)方案。數(shù)據(jù)庫(kù)分為小程序端和服務(wù)端兩部分,小程序端擁有嚴(yán)格的調(diào)用權(quán)限控制,開(kāi)發(fā)者可在小程序內(nèi)直接調(diào)用進(jìn)行非敏感數(shù)據(jù)的操作。 李成熙,騰訊云高級(jí)工程師。2014年度畢業(yè)加入騰訊AlloyTeam,先后負(fù)責(zé)過(guò)QQ群、花樣直播、騰訊文檔等項(xiàng)目。2018年加入騰訊云云開(kāi)發(fā)團(tuán)隊(duì)。專注于性能優(yōu)化、工程化和小程序服務(wù)。微博 | 知...

    GitChat 評(píng)論0 收藏0
  • 程序全棧開(kāi)發(fā)時(shí)代

    摘要:整套功能是基于騰訊云全新推出的云開(kāi)發(fā)所研發(fā)出來(lái)的一套完備的小程序后臺(tái)開(kāi)發(fā)方案。數(shù)據(jù)庫(kù)分為小程序端和服務(wù)端兩部分,小程序端擁有嚴(yán)格的調(diào)用權(quán)限控制,開(kāi)發(fā)者可在小程序內(nèi)直接調(diào)用進(jìn)行非敏感數(shù)據(jù)的操作。 歡迎大家前往騰訊云+社區(qū),獲取更多騰訊海量技術(shù)實(shí)踐干貨哦~ 本文由heyli發(fā)表于云+社區(qū)專欄 什么是小程序·云開(kāi)發(fā) 小程序·云開(kāi)發(fā)是微信團(tuán)隊(duì)和騰訊云團(tuán)隊(duì)共同研發(fā)的一套小程序基礎(chǔ)能力,簡(jiǎn)言之就是...

    lily_wang 評(píng)論0 收藏0
  • 前端面試題總結(jié)(js、html、小程序、React、ES6、Vue、算法、全棧熱門視頻資源)

    摘要:并總結(jié)經(jīng)典面試題集各種算法和插件前端視頻源碼資源于一身的文檔,優(yōu)化項(xiàng)目,在瀏覽器端的層面上提升速度,幫助初中級(jí)前端工程師快速搭建項(xiàng)目。 本文是關(guān)注微信小程序的開(kāi)發(fā)和面試問(wèn)題,由基礎(chǔ)到困難循序漸進(jìn),適合面試和開(kāi)發(fā)小程序。并總結(jié)vue React html css js 經(jīng)典面試題 集各種算法和插件、前端視頻源碼資源于一身的文檔,優(yōu)化項(xiàng)目,在瀏覽器端的層面上提升速度,幫助初中級(jí)前端工程師快...

    li21 評(píng)論0 收藏0
  • 前端面試題總結(jié)(js、html、小程序、React、ES6、Vue、算法、全棧熱門視頻資源)

    摘要:并總結(jié)經(jīng)典面試題集各種算法和插件前端視頻源碼資源于一身的文檔,優(yōu)化項(xiàng)目,在瀏覽器端的層面上提升速度,幫助初中級(jí)前端工程師快速搭建項(xiàng)目。 本文是關(guān)注微信小程序的開(kāi)發(fā)和面試問(wèn)題,由基礎(chǔ)到困難循序漸進(jìn),適合面試和開(kāi)發(fā)小程序。并總結(jié)vue React html css js 經(jīng)典面試題 集各種算法和插件、前端視頻源碼資源于一身的文檔,優(yōu)化項(xiàng)目,在瀏覽器端的層面上提升速度,幫助初中級(jí)前端工程師快...

    AaronYuan 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<