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 相关文章推荐
让iframe框架网页在任何浏览器下自动伸缩
Aug 18 Javascript
JavaScript DOM学习第四章 getElementByTagNames
Feb 19 Javascript
firefox浏览器不支持innerText的解决方法
Aug 07 Javascript
IE下使用jQuery重置iframe地址时内存泄露问题解决办法
Feb 05 Javascript
Javascript中的return作用及javascript return关键字用法详解
Nov 05 Javascript
javascript中的后退和刷新实现方法
Nov 10 Javascript
Bootstrap 表单验证formValidation 实现表单动态验证功能
May 17 Javascript
vue中的event bus非父子组件通信解析
Oct 27 Javascript
使用vue的transition完成滑动过渡的示例代码
Jun 25 Javascript
如何去除富文本中的html标签及vue、react、微信小程序中的过滤器
Nov 21 Javascript
jQuery实现的移动端图片缩放功能组件示例
May 01 jQuery
原生JS实现无缝轮播图片
Jun 24 Javascript
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
PHP 存储文本换行实现方法
2010/01/05 PHP
smarty中post用法实例
2014/11/28 PHP
了解jQuery技巧来提高你的代码
2010/01/08 Javascript
js 自定义的联动下拉框
2010/02/07 Javascript
js实现双向链表互联网机顶盒实战应用实现
2011/10/28 Javascript
JS控制文本框textarea输入字数限制的方法
2013/06/17 Javascript
Javascript浅谈之引用类型
2013/12/18 Javascript
[原创]推荐10款最热门jQuery UI框架
2014/08/19 Javascript
jQuery往textarea中光标所在位置插入文本的方法
2015/06/26 Javascript
[原创]Javascript 实现广告后加载 可加载百度谷歌联盟广告
2016/05/11 Javascript
关于JavaScript 原型链的一点个人理解
2016/07/31 Javascript
js判断checkbox是否选中个数的方法(超简单)
2016/08/19 Javascript
详解Vue 事件驱动和依赖追踪
2017/04/22 Javascript
JavaScript实现二叉树的先序、中序及后序遍历方法详解
2017/10/26 Javascript
详解js中Array的方法及技巧
2018/09/12 Javascript
使用webpack搭建vue环境的教程详解
2019/12/31 Javascript
jQuery操作选中select下拉框的值代码实例
2020/02/07 jQuery
[01:14]3.19DOTA2发布会 三代刀塔人第二代
2014/03/25 DOTA
Python的Bottle框架中返回静态文件和JSON对象的方法
2015/04/30 Python
详解python 发送邮件实例代码
2016/12/22 Python
python爬虫实现教程转换成 PDF 电子书
2017/02/19 Python
Python正则表达式常用函数总结
2017/06/24 Python
python 列表降维的实例讲解
2018/06/28 Python
python递归全排列实现方法
2018/08/18 Python
python得到一个excel的全部sheet标签值方法
2018/12/10 Python
Python字符串通过'+'和join函数拼接新字符串的性能测试比较
2019/03/05 Python
python从入门到精通 windows安装python图文教程
2019/05/18 Python
VPS CENTOS 上配置python,mysql,nginx,uwsgi,django的方法详解
2019/07/01 Python
解决python中用matplotlib画多幅图时出现图形部分重叠的问题
2019/07/07 Python
质检部职责
2013/12/28 职场文书
自荐信如何制作?
2014/02/21 职场文书
电工工作职责范本
2014/02/22 职场文书
小学生母亲节演讲稿
2014/05/07 职场文书
学校花圃的标语
2014/06/18 职场文书
学校安全管理制度
2015/08/06 职场文书
Python实战之大鱼吃小鱼游戏的实现
2022/04/01 Python