vue-cli 3.0 豆瓣api接口使用element做分页
记录自己的学习 大佬绕道谢谢!
豆瓣即将上映接口:https://api.douban.com/v2/movie/coming_soon
本地跨域问题 看我之前的文章:https://www.cnblogs.com/yangsg/p/10633385.html
因为之前用过element UI写过分页相关业务代码 但是时间久了就淡忘了 所以总结下来 方便下次的使用
可以看到接口返回的字段有:
count:表示返回几条数据
start:表示从哪条开始
total:表示总数
subjects:表示数据的详细
我们这里使用的是element UI的 Pagination 分页 + table表格
因为豆瓣返回的是 count 和 start 我们使用这两个字段去做分页
使用了watch监听 satrt 如果satrt变化 则调用init函数
sizechange函数 里面val是我按钮点击的数字 (或者理解为里面的按钮)
页面的截图:
下面看代码:
<el-table
:data="tableData"
style="width: 100%">
<el-table-column
prop=""
label="序号"
width="180">
<template slot-scope='scope'>{{scope.$index+1}}</template>
</el-table-column>
<el-table-column
prop="original_title"
label="标题"
width="180">
</el-table-column>
<el-table-column
prop="genres"
label="类型"
width="180">
<template slot-scope="scope">{{ scope.row.genres.join('&') }}</template>
</el-table-column>
<el-table-column
prop="id"
label="id">
</el-table-column>
<el-table-column
fixed="right"
label="操作">
<template slot-scope="scope">
<el-button @click="handleDele(scope.$index,tableData)" type="text" size="small">删除</el-button>
</template>
</el-table-column>
</el-table>
<el-pagination background layout="prev, pager, next" @current-change="sizeChange" :page-size="pageSize"
:total="listTotal" class="paginaRight">
</el-pagination>
data(){
return{
pageSize:5,
listTotal:null,
listParams:{
start: 0,
count: 5
},
tableData:null
}
}
mounted(){
this.init();
},
watch:{
start(val){
this.init(val)
}
},
methods: {
handleDele(index,data){
//删除当前的row
this.$confirm('此操作删除当前行,是否继续?','提示',{
confirmButtonText:'确定',
cancelButtonText:'取消',
type:'warning'
}).then(()=>{
data.splice(index,1)
this.$message({
type:'success',
message:'删除成功'
})
}).catch(()=>{
this.$message({
type:'info',
message:'已取消删除'
})
}) },
init(){
const url= '/api/movie/coming_soon';
this.$http.post(url,{...this.listParams}).then((res)=>{
this.listTotal = res.data.total;
this.tableData = res.data.subjects
})
},
sizeChange(val){
this.listParams.start = this.listParams.count*val;
this.init(this.listParams);
},
}
vue-cli 3.0 豆瓣api接口使用element做分页的更多相关文章
- Vue CLI 3.0脚手架如何在本地配置mock数据
前后端分离的开发模式已经是目前前端的主流模式,至于为什么会前后端分离的开发我们就不做过多的阐述,既然是前后端分离的模式开发肯定是离不开前端的数据模拟阶段. 我们在开发的过程中,由于后台接口的没有完成或 ...
- vue中Axios请求豆瓣API数据并展示到Swipe中
vue中Axios请求豆瓣API数据并展示到Swipe中 1.首先是安装Axios: 安装方法cnpm install axios --save 等待npm安装完毕: 2.在main.js中引入axi ...
- 专访Vue作者尤雨溪:Vue CLI 3.0重构的原因
1.为什么要对 Vue CLI 进行大规模修改? 尤雨溪认为旧版本的 Vue CLI 本质上只是从 GitHub 拉取模版,这种拉模版的方式有几个问题: (1) 在单个模版里面同时支持太多选项会导致模 ...
- vue cli 4.0.5 的使用
vue cli 4.0.5 的使用 现在的 vue 脚手架已经升级到4.0的版本了,前两日vue 刚发布了3.0版本,我看了一下cli 4 和cli 3 没什么区别,既然这样,就只总结一下vue cl ...
- @vue/cli 4.0+express 前后端分离实践
之前总结过一篇vue-cli 2.x+express+json-server实现前后端分离的帖子,@vue/cli3.0及4.0搭建的项目与vue-cli2.x的项目结构有很大的不同.这里对@vue/ ...
- @vue/cli 3.0 使用 svg-sprite-loader 加载本地 SVG 文件
目录 @vue/cli 3.0 使用 svg-sprite-loader 加载本地 SVG 文件 运行 使用 配置 svg-sprite-loader 调用当前环境下的颜色 props @vue/cl ...
- 如何使用@vue/cli 3.0在npm上创建,发布和使用你自己的Vue.js组件库
译者按: 你可能npm人家的包过成千上万次,但你是否有创建,发布和使用过自己的npm包? 原文: How to create, publish and use your own VueJS Compo ...
- VUE CLI 3.0 安装及创建项目
一.安装 VUE CLI 3.0 官网: https://cli.vuejs.org/ 详细资料可以自己先把官网过一遍. 1. 安装(默认你的电脑上已安装node及npm) npm install ...
- Django + Vue cli 3.0 访问静态资源问题
[问题背景] 用Vue clie 3.0的搭建得框架把我坑死了,在打包后,调用不到静态资源js,css,mp3等 [问题原因] vue cli 3.0打包后,dist目录下没有static目录,而Dj ...
随机推荐
- [译] Z-variant (Z变体)
阅读目录 1. Z轴上的区别 2. 问题 Unihan 的 kZVariant 字段 译自: en.wikipedia.org/wiki/Z-variant | 已发布zh.wiki 在Unicode ...
- 在小程序中修改上一个页面里data中的数据调用上一个页面的方法
//获取已经打开的页面的数组 var pages = getCurrentPages(); //获取上一个页面的所有的方法和data中的数据 var lastpage = pages[pages.l ...
- Windows Server 2003 动态网站IIS设置(图)
一.安装IIS Windows Server 2003 虽说是服务器版本,但在默认情况下并没有安装IIS,要在本地浏览asp,PHP等动态网页,就必须安装IIS.在买系统盘的时候,请注意看一下 ...
- C#中IL, CTS, CLR, CLS, JIT含义
1. IL/MSIL (Microsoft Intermediate Language) 微软中间语言 (IL是MSIL的缩写,译为中间语言) 2. CTS (Common Type System ...
- 【MyBatis】MyBatis实现CRUD操作
1.实现基本CRUD功能 使用MyBatis对数据完整的操作,也就是CRUD功能的实现.根据之前的内容,要想实现CRUD,只需要进行映射文件的配置. 范例:修改EmpMapper.xml文件,实现CR ...
- 89C51单片机的学习
好久都没来写一些东西了 最近老是忙着玩了,都忘记认真学习了. 大概从明天开始就要开始忙了. 1,英语四级 2,单片机课程 3,安卓课程 4,PS 感觉事情好多. 但是我还是心不在焉.好奇怪. 反正就是 ...
- grep 满足多个关键字 任意关键字 排除多个关键字
① grep -E "word1|word2|word3" file.txt 满足任意条件(word1.word2和word3之一)将匹配. ② grep word1 f ...
- 6、Node.js 事件循环
#########################################################################################Node.js 事件循 ...
- Mybatis和Mysql的Json类型
Mysql5.7新增加了Json类型字段,但是目前Mybatis中并不支持 1.新建MybatisJsonTypeHandler.java import com.fasterxml.jackson.a ...
- .net中使用mysql回滚和sqlserver回滚的区别
关于sqlserver事务和mysql事务 首先这是一种方法 public static int GetExecteQuery() { SqlConnection ...