架构图
代码初始化
https://leancloud.cn/docs/sdk_setup-js.html#hash117588
- 首先在你的项目目录下生成一个package.json配置文件
npm init
这里你只需要一路回车就行
目录结构
创建一个src和dist目录
在src下面创建index.html和admin.html安装与引用
# 存储服务(包括推送)
$ npm install leancloud-storage --save
这时候你的目录里会多一个node_modules目录,我们不需要对这个目录进行提交,所以需要建一个.gitignore文件把不需要提交的文件写在里面
//根目录下的node_modules,这里的根目录是相对于当前文件的
/node_modules
然后运行
git init
git commit -m
之后在admin.html里通过script引入av-min.js
<script src="../node_modules/leancloud-storage/dist/av-min.js"></script>
<script>
console.log(window.AV)
</script>
这里要注意如果你通过http-server是在src目录下运行的,那么你监听的就只是src目录,它就永远访问不到src以外的目录(如node_modules目录),所以你上面引入node_modules,运行就会报错,所以你需要在根目录下运行http-server,这时你就要通过localhost:8080/src/admin.html来访问
- 初始化
var APP_ID = 'C53Rb0Jec26fM1aUKD7AYpud-gzGzoHsz';
var APP_KEY = 'qm2nw4mUpOaSrUF2bUsrWisu';
AV.init({
appId: APP_ID,
appKey: APP_KEY
});
在leancloud下创建一个163-music-demo应用为其添加数据
我们需要在下面创建三个数据库
User 管理员用户
Song 所有歌曲
Playlist 所有歌单
因为user本来就有所以我们不需要添加
添加一个Song
//创建数据库
var TestObject = AV.Object.extend('Song');
//创建一条记录
var testObject = new TestObject();
//保存记录
testObject.save({
name: 'test',
singer: 'test',
url: 'test'
}).then(function(object) {
alert('LeanCloud Rocks!');
})
然后你刷新页面之后就会有一个Song,这里只要创建成功代码就可以删掉
它里面默认就会有一个id,这里面的ACL是Access Control Layer访问控制层
用来控制角色读写权限
创建一个Playlist
//创建数据库
var TestObject = AV.Object.extend('Playlist');
//创建一条记录
var testObject = new TestObject();
//保存记录
testObject.save({
name: 'test',
cover: 'test',
creatorId: 'test',
description: 'test',
songs: ['1','2']
}).then(function(object) {
alert('LeanCloud Rocks!');
})