前言
不得不说在家里学习全然没有团队那种氛围,况且在家里没有学长的帮助,有些问题只能自己动手去解决,也算是对自己能力的提高吧,不得不说,人的能力真的是被逼出来的。
问题
在实际的项目中,无论是增加还是编辑,在进行完对应操作后,我们都需要它自动跳转到首页。
在进行编写学生管理的过程中,有很多都是可以参照前面的班级管理进行编写的,在班级管理中,实现跳转的是这一行代码:
this.router.navigateByUrl('/klass',{relativeTo: this.route});
这行代码的意思就是,想对于当前路由(klass/add)导航到/klass,由于后面没有子路由,而在路由的定义中,我们定义了如果子路由为空,那么就跳转到首页(Index)
{
path:'',
component: IndexComponent
},
然后就照葫芦画瓢在学生管理的增加部分进行了操作,但是,果不其然,出错了:
无论我怎么点击按钮,都会报错,打开控制台:
原来是路由出现了错误,再来看我写的的代码:
this.router.navigateByUrl('/Student',{relativeTo: this.route});
报错的信息是找不到任何路由,路由的部分是“Student”,来到app-routing.module.ts,看我们定义的路由:
{
path:'student',
loadChildren: () => import('./student/student.module').then(mod => mod.StudentModule)
},
原来是大小写的错误,在进行修正后,成功进行跳转,但是,我记得浏览器好像不区分大小写,然后试了试:
我输入的明明是Student,但是浏览器跳转到了student。
猜测
浏览器肯定有一种机制,就是大小写通用,大写找不到就找小写,都找不到才报错,而Anjular在进行路由查找和跳转是内部进行的,不经过浏览器,是什么路由,就找什么路由,找不到就报错。
解决
由于家里的网络不能去外网上查资料,唯一可以用的就是百度,有时候百度还是可以的,例如一些技术上的东西还是可以搜到的,但是一到了真正文学资料方面的查找,真的忍不住要骂娘,毫无用途,就像下面的这样,当然也不是绝对批判,毕竟能解答问题就很不错了,但是这也没说出原理来啊,不过现在确实知道了浏览器确实有一种机制去纠正输入上的错误。
总结
由于资源的问题,没能了解这种机制的实现方式,真的挺遗憾的,等回去再好好研究吧,当然了,也可能是搜索关键字的问题,现在也对大小写有了新的看法,以前以为无所谓,反正都能找到,不过现在看来真的很重要,将来协作开发的时候也得先规定好
感想
在家待这么多天,还好得跟教程编代码,要不然真的得无聊死,当然了,也对自己的选择有了更坚定的信心,这要从一件小事说起,
表姐要进行考试报名,结果出现了问题,
看一下第一句话:在服务器上出现了一个应用错误,肯定是网站自己的错误啊,然后我就打算打开控制台看看报啥错,在这里我再吐槽一下百某
放在第一位的永远是广告,真正的官网永远也找不到,要不是看我姐给的录屏,我这一天估计也找不到
点击缴费就报错,error 500
控制台报这样的错误,政府的网站竟然会报错,长见识了。
假如我没有选择加入团队,遇到这问题我还真不知道咋整,我觉得我的选择太对了,当然了,这也更坚定了我跟随团队好好学习的决心,再有感想就是做事要严谨,不能像这样,报错,真的挺丢人的。
最后呢,希望这次疫情早点过去,我想回教师公寓了。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。