1.初始化項目
由于目前(2020-07-08)taro的云開發(fā)模版有bug桐罕,所以使用taro的默認模版用作云開發(fā)
1.初始化項目
laughing@laughingdeMacBook-Pro smallapp % taro init taro-timer
?? Taro v3.0.2
Taro即將創(chuàng)建一個新項目!
Need help? Go and open issue: https://github.com/NervJS/taro/issues/new
? 拉取遠程模板倉庫成功!
? 請輸入項目介紹! 番茄鐘
? 請選擇框架 React
? 是否需要使用 TypeScript ? No
? 請選擇 CSS 預處理器(Sass/Less/Stylus) Sass
? 請選擇模板 默認模板
使用默認模版初始化項目后档冬,將之前使用微信開發(fā)者工具創(chuàng)建的項目中的cloudfunctions文件夾復制過來
使用 微信開發(fā)者工具創(chuàng)建的示例項目:
使用微信開發(fā)者工具創(chuàng)建的示例項目.jpg
使用taro默認模版.jpg
配置根目錄下的project.config.json
语稠,確保配置如下兩個項目:
"appid": "*******",
"cloudfunctionRoot":"cloudfunctions/",
1.靜默獲取openid:
在src-->index--index.jsx添加函數(shù):
onGetOpenid () {
// 調(diào)用云函數(shù)
wx.cloud.callFunction({
name: 'login',
data: {},
success: res => {
console.log('[云函數(shù)] [login] user openid: ', res.result.openid)
},
fail: err => {
console.error('[云函數(shù)] [login] 調(diào)用失敗', err)
}
})
}
如果將上面的函數(shù)放在componentWillMount
中調(diào)用就可以靜默獲取到openid了
2.操作數(shù)據(jù)庫
- 確保src-->app.js中配額了正確的env
- 確保文件夾是正確的環(huán)境
- 確保云開發(fā)中新建了名為counters的集合
const db = wx.cloud.database()
db.collection('counters').add({
data: {
count: 1
},
success: res => {
// 在返回結(jié)果中會包含新創(chuàng)建的記錄的 _id
this.setData({
counterId: res._id,
count: 1
})
wx.showToast({
title: '新增記錄成功',
})
console.log('[數(shù)據(jù)庫] [新增記錄] 成功,記錄 _id: ', res._id)
},
fail: err => {
wx.showToast({
icon: 'none',
title: '新增記錄失敗'
})
console.error('[數(shù)據(jù)庫] [新增記錄] 失斈郎选:', err)
}
})
這樣造锅,在counters里就添加了一條新的數(shù)據(jù)了
以上,就是taro使用默認模板后使用云開發(fā)的簡單方法