js获取html中div里的标签id_网易云音乐(中)搭建后台管理端(admin页面)

上文中我们已经引入了七牛和LeadCloud数据库,下面来做整个后台页面。

439f83e119bd9c1ffbf2fb53f2af5f2b.png

1.基本的页面的html,css布局,js

<div class="page">
        <aside>
            <div class="newSong">
            </div>
            <div id="songList-container">
            </div>
            <div class="uploadArea">
                <div id="uploadContainer" class="draggable">
                    <div id="uploadButton" class="clickable">
                        <p>点击或拖曳文件上传</p>
                        <p>文件不得大于100M</p>
                    </div>
                </div>
            </div>
        </aside>
        <main>
        </main>
    </div>

模块化、MVC封装

  • 事件中心——eventHub.js
  • 新建歌曲——newSong.js
  • 歌曲列表——songList.js
  • 上传歌曲——uploadSong.js
  • 歌曲编辑表单——songForm
  • LeadCloud——av.js

示例:

// newSong.js
{
    let view = {
        el:'.page .newSong',
        template:`
        <h1>新建歌曲</h1>
        `,
        render(data){
            $(this.el).html(this.template)
        }
    }
    let model = {}
    let controller = {
        init(view,model){
            this.view = view
            this.model = model
            this.view.render(this.model.data)
        }
    }
    controller.init(view,model)
}

2.初始化七牛时获取外链

设置domain为七牛存储空间的默认域名,然后获取文件url,并将其url和name发布到eventHub

//uploadSong.js  

3.将上传文件的url、name等数据渲染到页面

//songForm.js

4. 用model操纵数据库(创建、更新)

初始化av,在admin.html引入av.js

//av.js

上文已经提到过了,在LeanCloud我们有了一个Song的class。

监听表单form提交事件

model创建或更新并发布到eventHub

//songForm.js

model的创建保存及更新方法,可以在 LeadCloud文档——对象——保存&更新对象 找到

数据存储开发指南 · JavaScript​leancloud.cn

5.在songList页面循环创建<li>

通过eventHub将获取的data同步生成songList页面的li元素,类似Vue <li v-for>的语法。(加入selectSongId解决了创建后选中li更新后保存,选中li active丢失的bug。)

//songList.js

6.刷新后获取所有数据

//songListjs

7.点击<li>显示其编辑表单

监听点击事件

//songList.js

同时,songForm.js需订阅事件,更新数据

//controller部分

8.上传中加loading

//upload-song.js
//loading.js
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值