首先声明一下,自己搞这个小程序,但是对这个后台几乎是渣渣,所以后台基本依赖别人。
而今天偶然看别人写的Demo中用到了这个东西,很是好奇,后台很容易就能实现。
缺点:
1,价格真TM贵,LeanCloud云引擎最低配30元/月,
2,后台放在别人服务器上,哪天挂了找谁去啊,
3,而且那点小秘密都被别人看见了。。。
优点:
1,快速开发,
2,(借用郭德纲的一句话),恩~~会有的
好了,用不用自己看着来吧,不用的话,文章底部,点个赞再走吧,么么哒
——————————————–华丽的分割线——————————————–
官方文档地址:https://leancloud.cn/docs/weapp.html
1.下载SDK。
2.如果你下一步是要发布小程序了,别忘了把用到的域名添加上,https://leancloud.cn/docs/weapp-domains.html。
3.安装初始化:
在 app.js 中使用
const AV = require('./libs/av-weapp-min.js');
AV.init({
appId: 'e6FRGuyy23GkkrQeAPuW3ONJ-gzGzoHsz',
appKey: '13oC4vlWkXpyiGVTLCArSpLe',
});
**
4.数据绑定
** 4.1:首先需要创建一个对象类,也就是你数据库里的表
const App = getApp()
class Todo extends App.AV.Object {
get content() { return this.get('content') }
set content(value) { return this.set('content', value) }
get done() { return this.get('done') }
set done(value) { return this.set('done', value) }
}
App.AV.Object.register(Todo)
module.exports = Todo;
-
1
-
2
-
3
-
4
-
5
-
6
-
7
-
8
-
9
-
10
-
11
-
12
-
13
-
14
-
1
-
2
-
3
-
4
-
5
-
6
-
7
-
8
-
9
-
10
-
11
-
12
-
13
-
14
4.2在index.js中如何操作
//index.js
//获取应用实例
var App = getApp()
const Todo = require("../../model/todo");
Page({
addTodoFun() {
new Todo({
content: this.data.myData,
done: false
}).save()
.then(console.log)
.catch(console.error);
}
})
-
1
-
2
-
3
-
4
-
5
-
6
-
7
-
8
-
9
-
10
-
11
-
12
-
13
-
14
-
15
-
1
-
2
-
3
-
4
-
5
-
6
-
7
-
8
-
9
-
10
-
11
-
12
-
13
-
14
-
15
5.读取整张表
new App.AV
.Query('Todo')
.find().then(data => this.setData({ todoList: data }))
.catch(console.error)
6.一键登录
// LeanCloud 的用户系统现已支持一键使用微信用户身份登录。 // 要使用一键登录功能,需要先设置小程序的 AppID 与 AppSecret: // 如果该用户是第一次使用此应用,调用登录 API 会创建一个新的用户 // 同一个用户再次调用登录 loginWithWeapp() 会返回同一个用户。 // 用户的登录状态会保存在客户端中
// 支持一键使用微信用户身份登录,信息并不完整
App.AV.User.loginWithWeapp()
.then(user => console.log(user.toJSON()))
.catch(console.error)
// 获取本地当前用户信息
const user = App.AV.User.current()
// 更新用户信息
wx.getUserInfo({
success(userInfo) {
// 更新当前用户的信息
user.set(userInfo)
.save()
.then(user => console.log(user.toJSON()))
.catch(console.error)
}
})
-
1
-
2
-
3
-
4
-
5
-
6
-
7
-
8
-
9
-
10
-
11
-
12
-
13
-
14
-
15
-
16
-
1
-
2
-
3
-
4
-
5
-
6
-
7
-
8
-
9
-
10
-
11
-
12
-
13
-
14
-
15
-
16
7.启用其他登录方式
AV.User.loginWithWeapp().then(user => {
user.setMobilePhoneNumber('13000000000');
return user.save();
}).then(user => {
return AV.User.requestMobilePhoneVerify(user.getMobilePhoneNumber());
}).then({
}).catch(console.error);
-
1
-
2
-
3
-
4
-
5
-
6
-
7
-
8
-
9
-
10
-
11
-
12
-
13
-
1
-
2
-
3
-
4
-
5
-
6
-
7
-
8
-
9
-
10
-
11
-
12
-
13
8.文件存储
wx.chooseImage({
count: 1,
sizeType: ['original', 'compressed'],
sourceType: ['album', 'camera'],
success: function (res) {
var tempFilePath = res.tempFilePaths[0];
new App.AV
.File('file-name', {
blob: { uri: tempFilePath, },
})
.save()
.then(file => console.log(file.url()))
.catch(console.error);
}
});
-
1
-
2
-
3
-
4
-
5
-
6
-
7
-
8
-
9
-
10
-
11
-
12
-
13
-
14
-
15
-
16
-
17
-
1
-
2
-
3
-
4
-
5
-
6
-
7
-
8
-
9
-
10
-
11
-
12
-
13
-
14
-
15
-
16
-
17
9.绑定现有客户
AV.User.logIn('username', 'password').then(user => {
return user.linkWithWeapp();
}).catch(console.error);