vue2.0嵌套路由实现豆瓣电影分页功能(附demo)
发布时间 - 2026-01-11 00:08:37 点击率:次前言

最近练习Vue,看到官方文档中的嵌套路由,不做不知道,实在是太坑了,网上资料demo少之又少,然后自己就做了一个demo,用了vue2.0嵌套路由实现豆瓣电影分页功能,供大家学习学习,写得不好望见谅。
demo截图:
Demo简单介绍
主路由:Top250(charts),正在热映(hot),即将上映(ing),新片榜(newmovie)
const router = new VueRouter({
routes: [
{
path: '/', //设置默认路由为Top250
component: charts
},
{
path: '/charts', //Top250
component: charts
},
{
path: '/hot',
component: hot
},
{
path: '/ing',
component: ing
},
{
path: '/newmovie',
component: newmovie
},
]
}
在top250(charts)上添加了分页功能作为子路由,在配置上添加:
{
path: '/charts/:id', //子路由
component: charts,
children: [
{path: '1', component: moviecontent},
{path: '2', component: moviecontent2},
{path: '3', component: moviecontent3}
]
}
在charts组件上添加入口:
<router-link to="/charts/1">1</router-link> <router-link to="/charts/2">2</router-link> <router-link to="/charts/3">3</router-link>
在charts组件上添加出口:
<router-view></router-view>
子路由如何跳转同一组件时数据实现更新?
同样,在top250(charts)上添加了分页功能作为子路由,但指向同一组件:
{
path: '/charts/:id', //子路由
component: charts,
children: [
{path: '1', component: moviecontent2}, // 同一组件
{path: '2', component: moviecontent2}, // 同一组件
{path: '3', component: moviecontent2} // 同一组件
]
}
画重点:
因为路由切换同一组件时,实例已经在第一次进入路由时创建了,之后切换路由不会被创建了,所以只能调用一次created,因此要使用$route监听getData方法,当路由切换的时候,调用getData方法,重新获取数据。
created: function () {
//第一次进入路由时数据的更新
this.$http.jsonp()
},
watch: {
'$route': 'getData' //切换路由,调用getData方法
},
methods: {
getData: function () {
//路由切换,重新请求数据
this.$http.jsonp()
}
}
数据来自豆瓣电影API。
代码写得好烂,凑合着看吧,反正子路由还是成功的啊!
本demo地址:doubandemo_jb51.rar
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# vue.js实现分页
# vue嵌套路由实现分页
# vue.js
# 分页
# Vue2 响应式系统之分支切换
# Vue2响应式系统介绍
# Vue2 响应式系统之异步队列
# vue2路由方式--嵌套路由实现方法分析
# Vue2.0使用嵌套路由实现页面内容切换/公用一级菜单控制页面内容切换(推荐)
# vue2.0使用v-for循环制作多级嵌套菜单栏
# 详解vue2.0 transition 多个元素嵌套使用过渡
# Vue2响应式系统之嵌套
# 写得
# 用了
# 不做
# 少之又少
# 跳转
# 看吧
# 就做
# 要使
# 大家多多
# 文档
# 网上
# pre
# newmovie
# hot
# ing
# js
# const
# class
# brush
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
Laravel Seeder怎么填充数据_Laravel数据库填充器的使用方法与技巧
如何快速搭建高效WAP手机网站?
MySQL查询结果复制到新表的方法(更新、插入)
Edge浏览器提示“由你的组织管理”怎么解决_去除浏览器托管提示【修复】
Laravel路由怎么定义_Laravel核心路由系统完全入门指南
非常酷的网站设计制作软件,酷培ai教育官方网站?
Laravel怎么实现模型属性转换Casting_Laravel自动将JSON字段转为数组【技巧】
如何使用 jQuery 正确渲染 Instagram 风格的标签列表
Laravel如何使用软删除(Soft Deletes)功能_Eloquent软删除与数据恢复方法
Python企业级消息系统教程_KafkaRabbitMQ高并发应用
Laravel怎么调用外部API_Laravel Http Client客户端使用
宙斯浏览器怎么屏蔽图片浏览 节省手机流量使用设置方法
如何在万网开始建站?分步指南解析
Laravel如何与Docker(Sail)协同开发?(环境搭建教程)
Laravel怎么进行浏览器测试_Laravel Dusk自动化浏览器测试入门
如何在服务器上三步完成建站并提升流量?
详解vue.js组件化开发实践
利用JavaScript实现拖拽改变元素大小
想要更高端的建设网站,这些原则一定要坚持!
怎么用AI帮你为初创公司进行市场定位分析?
百度输入法ai面板怎么关 百度输入法ai面板隐藏技巧
Laravel如何处理跨站请求伪造(CSRF)保护_Laravel表单安全机制与令牌校验
C++时间戳转换成日期时间的步骤和示例代码
微博html5版本怎么弄发语音微博_语音录制入口及时长限制操作【教程】
如何在Windows虚拟主机上快速搭建网站?
java中使用zxing批量生成二维码立牌
如何用狗爹虚拟主机快速搭建网站?
zabbix利用python脚本发送报警邮件的方法
Laravel如何创建自定义中间件?(Middleware代码示例)
宙斯浏览器文件分类查看教程 快速筛选视频文档与图片方法
网站优化排名时,需要考虑哪些问题呢?
如何在阿里云虚拟机上搭建网站?步骤解析与避坑指南
Bootstrap整体框架之CSS12栅格系统
如何安全更换建站之星模板并保留数据?
如何在阿里云完成域名注册与建站?
Laravel怎么实现搜索功能_Laravel使用Eloquent实现模糊查询与多条件搜索【实例】
Bootstrap CSS布局之列表
JavaScript模板引擎Template.js使用详解
JS中对数组元素进行增删改移的方法总结
如何在七牛云存储上搭建网站并设置自定义域名?
JavaScript如何实现音频处理_Web Audio API如何工作?
Laravel如何优雅地处理服务层_在Laravel中使用Service层和Repository层
Linux系统运维自动化项目教程_Ansible批量管理实战
JS碰撞运动实现方法详解
Laravel如何使用查询构建器?(Query Builder高级用法)
JavaScript如何实现错误处理_try...catch如何捕获异常?
如何在IIS中新建站点并配置端口与IP地址?
Python正则表达式进阶教程_复杂匹配与分组替换解析
JS实现鼠标移上去显示图片或微信二维码
jQuery validate插件功能与用法详解

