云開發(fā)與 Serverless
什么是小程序云開發(fā)
- 傳統(tǒng)的小程序開發(fā):前端+后端(各種后端亥宿,運維的問題)
- 云開發(fā)模式:小程序端+云開發(fā)(充當后臺)
什么是 Serverless
- 無服務模式
- 物理隔離:云端化打破這種隔離
- 函數(shù)即服務:像調(diào)用一個普通的函數(shù)一樣去調(diào)用后端服務(云函數(shù))
- 優(yōu)勢:快速上線;全棧開發(fā);無需運維
- 能力
- 云函數(shù):在云端運行的代碼
- 云數(shù)據(jù)庫:既可以在小程序端也可以在云函數(shù)中操作JSON數(shù)據(jù)庫
- 云存儲:在云端存儲文件,可視化管理
- 云調(diào)用:基于云函數(shù)免鑒權(quán)使用小程序開發(fā)接口
- HTTP API
項目初始化
開啟云開發(fā)
- 初始化代碼后飞主,左上角“云開發(fā)”按鈕點擊生效
- 創(chuàng)建云開發(fā)環(huán)境腺占,并為
cloudfunctions
選擇你剛創(chuàng)建的環(huán)境(默認會有兩個環(huán)境赃承,一個是可供測試域帐,一個可供正式環(huán)境) - 在
app.js
中的onLaunch
鉤子中設置env
為你的環(huán)境id -
app.json
不能有注釋
組件化開發(fā)
- 概念:在用戶界面開發(fā)赘被,組件是一種面向用戶的、獨立的俯树、可復用的交互元素的封裝
- 組成:結(jié)構(gòu)帘腹,邏輯贰盗,樣式
- 意義
- 組件化是對實現(xiàn)的分層许饿,是更有效地代碼組合方式
- 組件化是對資源的重組和優(yōu)化,從而是項目資源管理更合理
- 組件化有利于單元測試
- 組件化對重構(gòu)友好
- 設計原則
- 高內(nèi)聚舵盈,低耦合
- 單一職責
- 避免過多的參數(shù)
- 小程序中的背景圖片是不能使用網(wǎng)絡圖片陋率,只能使用base64或者本地的圖片
- 每個頁面中單獨使用方法一般加下劃線:
_privateFunction(){}
(不過js沒有私有這個概念)
監(jiān)聽 observers
- 監(jiān)聽組件的一些數(shù)據(jù)改變的時候,不能再去對這個被監(jiān)聽的數(shù)據(jù)進行賦值秽晚,這樣容易造成死循環(huán)瓦糟。解決的方法是:在
data
里面設置一個變量去保存監(jiān)聽中需要被賦值的數(shù)據(jù) -
Number
是沒有length
屬性的,只有Array
和String
有length
屬性
wx:key
- 原理聽了一遍赴蝇,但是不是很明確菩浙,以后再聽一遍
同步和異步
- 同步:處理完一個操作,才能進行下一個操作
- 異步:在一個操作進行的過程中,可以同時進行另外一個操作
-
ES7中的(最新版的小程序端node版本已經(jīng)支持了)async
和await
在云函數(shù)中是支持的劲蜻,但是在小程序端是不支持的陆淀,需要引入其他的支持庫