美文网首页
taro+云开发

taro+云开发

作者: laughing_club | 来源:发表于2020-07-08 19:56 被阅读0次

    1.初始化项目

    由于目前(2020-07-08)taro的云开发模版有bug,所以使用taro的默认模版用作云开发

    1.初始化项目

    laughing@laughingdeMacBook-Pro smallapp % taro init taro-timer
    👽 Taro v3.0.2
    
    Taro即将创建一个新项目!
    Need help? Go and open issue: https://github.com/NervJS/taro/issues/new
    
    ✔ 拉取远程模板仓库成功!
    ? 请输入项目介绍! 番茄钟
    ? 请选择框架 React
    ? 是否需要使用 TypeScript ? No
    ? 请选择 CSS 预处理器(Sass/Less/Stylus) Sass
    ? 请选择模板 默认模板
    

    使用默认模版初始化项目后,将之前使用微信开发者工具创建的项目中的cloudfunctions文件夹复制过来

    使用 微信开发者工具创建的示例项目:

    使用微信开发者工具创建的示例项目.jpg 使用taro默认模版.jpg

    配置根目录下的project.config.json,确保配置如下两个项目:

    "appid": "*******",
    "cloudfunctionRoot":"cloudfunctions/",
    

    1.静默获取openid:

    在src-->index--index.jsx添加函数:

    onGetOpenid () {
      // 调用云函数
      wx.cloud.callFunction({
        name: 'login',
        data: {},
        success: res => {
            console.log('[云函数] [login] user openid: ', res.result.openid)
        },
        fail: err => {
          console.error('[云函数] [login] 调用失败', err)
        }
      })
    }
    

    如果将上面的函数放在componentWillMount中调用就可以静默获取到openid了

    2.操作数据库

    • 确保src-->app.js中配额了正确的env
    • 确保文件夹是正确的环境
    • 确保云开发中新建了名为counters的集合
    const db = wx.cloud.database()
    db.collection('counters').add({
      data: {
        count: 1
      },
      success: res => {
        // 在返回结果中会包含新创建的记录的 _id
        this.setData({
        counterId: res._id,
        count: 1
        })
        wx.showToast({
        title: '新增记录成功',
        })
        console.log('[数据库] [新增记录] 成功,记录 _id: ', res._id)
      },
      fail: err => {
        wx.showToast({
          icon: 'none',
          title: '新增记录失败'
        })
        console.error('[数据库] [新增记录] 失败:', err)
      }
    })
    

    这样,在counters里就添加了一条新的数据了


    以上,就是taro使用默认模板后使用云开发的简单方法

    相关文章

      网友评论

          本文标题:taro+云开发

          本文链接:https://www.haomeiwen.com/subject/uadhcktx.html