Vue在 Nuxt.js 中重定向 404 页面的方法


Posted in Javascript onApril 23, 2019

Nuxt.js 依据 pages 目录结构自动生成 vue-router 模块的路由配置。

要在页面之间使用路由,我们建议使用<nuxt-link> 标签。

正文

对我来说,Nuxt 是我所用过最好用的软件代码之一。它可以让我高效率地打造网站应用,无论这些应用是 SPA,还是 SSR,又或者是静态站点,这同时也是 JAM Stack 上面所提到的趋势。

顺便提一点,我们这个网站Vuedose 也是使用 Nuxt 所建立静态站点。

但是,绝大多数自己领悟的很有意思的使用技巧并没有被记载沉淀下来,这不行,现在我们就来分享第一个 Nuxt 的技巧。

如果你熟悉 Nuxt.js,那么你就应该知道pages 的概念是什么。同样地,你也应该知道这个特殊的Error Page,虽然它是被放在 Layouts 文件夹中的,但它是被作为一个 page。

你可以去重写这个默认的错误页,并且根据你的需求去定制它,但是如果我们想要一个不同的表现形式呢?

在一些情况下,比如当用户访问一个并不存在的页面时,我们想要将其重定向到网站主页。

这里有个方法:你可以通过简单地创建 pages/*.vue 组件来完成这个需求:

<!-- pages/*.vue -->
<script>
export default {
 asyncData ({ redirect }) {
  return redirect('/')
 }
}
</script>

在 Nuxt 中,路由是通过文件命名来定义的。所以当我们创建了一个 *.vue 文件是,我们实际上是在 Vue Router 上使用通配符的路由。

然后,我们使用 Nuxt 上下文中的 rediect 方法来实现重定向,无论它是在客户端还是在服务器端。

我们在 asyncData 方法中去做这个重定向,是因为我们在那里有上下文。但是,我们也可以在 fetch 方法中达到同样的效果:

<!-- pages/*.vue -->
<script>
export default {
 fetch ({ redirect }) {
  return redirect('/')
 }
}
</script>

快去使用一下吧,尝试访问任何一个不存在 url,你应该能看到它是如何被重定向的。

总结

以上所述是小编给大家介绍的Vue在 Nuxt.js 中重定向 404 页面的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Javascript 相关文章推荐
用JS实现的一个include函数
Jul 21 Javascript
jQuery中创建实例与原型继承揭秘
Dec 21 Javascript
js实现收缩菜单效果实例代码
Oct 30 Javascript
js实现网页标题栏闪烁提示效果实例分析
Nov 20 Javascript
JavaScript+html5 canvas制作色彩斑斓的正方形效果
Jan 27 Javascript
jQuery动态加载css文件实现方法
Jun 15 Javascript
vue2.0 实现页面导航提示引导的方法
Mar 13 Javascript
讲解vue-router之什么是编程式路由
May 28 Javascript
解决vue移动端适配问题
Dec 12 Javascript
JS window对象简单操作完整示例
Jan 14 Javascript
JavaScript的一些小技巧分享
Jan 06 Javascript
springboot+VUE实现登录注册
May 27 Vue.js
vue项目首屏加载时间优化实战
Apr 23 #Javascript
灵活使用console让js调试更简单的方法步骤
Apr 23 #Javascript
详解实现一个通用的“划词高亮”在线笔记功能
Apr 23 #Javascript
Vue源码学习之关于对Array的数据侦听实现
Apr 23 #Javascript
vue的keep-alive中使用EventBus的方法
Apr 23 #Javascript
js继承的这6种方式!(上)
Apr 23 #Javascript
jQuery对底部导航进行跳转并高亮显示的实例代码
Apr 23 #jQuery
You might like
window+nginx+php环境配置 附配置搭配说明
2010/12/29 PHP
VPS中使用LNMP安装WordPress教程
2014/12/28 PHP
ThinkPHP安装和设置
2015/07/27 PHP
在Yii2特定页面如何禁用调试工具栏Debug Toolbar详解
2017/08/07 PHP
javascript中的原型链深入理解
2014/02/24 Javascript
jquery实现的伪分页效果代码
2015/10/29 Javascript
有关jquery与DOM节点操作方法和属性记录
2016/04/15 Javascript
探讨:JavaScript ECAMScript5 新特性之get/set访问器
2016/05/05 Javascript
浅谈js在html中的加载执行顺序,多个jquery ready执行顺序
2016/11/26 Javascript
JS一个简单的注册页面实例
2017/09/05 Javascript
ajax前台后台跨域请求处理方式
2018/02/08 Javascript
微信小程序实现自定义modal弹窗封装的方法
2018/06/15 Javascript
利用angular自动编译andriod APK的绕坑经历分享
2019/03/08 Javascript
配置node服务器并且链接微信公众号接口配置步骤详解
2019/06/21 Javascript
Node.js中console.log()输出彩色字体的方法示例
2019/12/01 Javascript
JS数组属性去重并校验重复数据
2020/01/10 Javascript
Vue2.0 ES6语法降级ES5的操作
2020/10/30 Javascript
vue video和vue-video-player实现视频铺满教程
2020/10/30 Javascript
python实现批量改文件名称的方法
2015/05/25 Python
python中is与双等于号“==”的区别示例详解
2017/11/21 Python
python实现高斯(Gauss)迭代法的例子
2019/11/20 Python
Python找出列表中出现次数最多的元素三种方式
2020/02/24 Python
导出HTML5 Canvas图片并上传服务器功能
2019/08/16 HTML / CSS
爱游人:Travelliker
2017/09/05 全球购物
幼儿师范毕业生自荐信
2013/11/09 职场文书
应届大学生自荐信
2013/12/05 职场文书
数学系毕业生的自我评价
2014/01/10 职场文书
应届生自荐信范文
2014/02/21 职场文书
材料专业毕业生求职信
2014/02/26 职场文书
考试诚信承诺书
2014/05/23 职场文书
党性分析材料格式
2014/12/19 职场文书
少先队辅导员事迹材料
2014/12/24 职场文书
小班下学期幼儿评语
2014/12/30 职场文书
综合办公室岗位职责
2015/04/11 职场文书
班级联欢会主持词
2015/07/03 职场文书
六年级作文之家庭作文
2019/12/12 职场文书