react-native 開發筆記 (三)

react-native 開發筆記

es7 async

react native默認編譯配置能夠編譯一部分es7語法的,async await是其中的一種。使用起來天然是很簡單,和koa 1.x 基本一致,沒有區別。node

多個路由頁面之間的通訊

有這樣子一種場景react

  1. 用戶進來,顯示未登陸的首頁web

  2. 用戶點擊去登陸,進入登陸頁面react-native

  3. 登陸成功,跳轉回首頁,這時候要從新加載首頁的信息,那怎麼通知首頁更新呢app

react-native自帶了RCTDeviceEventEmitter模塊,用來作事件通訊的。這個模塊的設計思想和nodejs的event模塊相似。koa

須要注意的是,此模塊只須要引入一次放置到一個文件裏,而後其餘模塊統統引入這個文件,才能夠通訊。不能每一個文件都引入這個模塊,那樣子就是單獨的事件實例,沒法進行通訊。async

文件上傳

好比用戶須要修改頭像,這時候就會用到攝像頭和選擇圖片,社區有現成的模塊可使用
使用到的組件:編碼

react-native-image-picker:調用攝像頭和選取圖片
react-native-image-resizer:圖片壓縮模塊

get到一個技能點就是,formData的使用。是的react-native裏面也集成了這個方法設計

formData能夠附加文件,之前在web上,我只是使用了file獲取的文件,直接append進去。code

今天獲得一個新技能

let formData = new FormData()
formData.append('avatar', {uri: resizedImagePath, name: response.fileName, type: 'multipart/form-data'})

其實append的第二個參數就是一個File實例,根據file.type能夠決定不少東西

若是是 multipart/form-data,uri就能夠是一個圖片路徑
若是是 image/jpeg,uri能夠是一個圖片的base64編碼字符串

可能還有一些其餘的功能,待研究

相關文章
相關標籤/搜索