Angular 利用路由跳转到指定页面的指定位置方法


Posted in Javascript onAugust 31, 2018

之前做过页面内的跳转,比较简单,最近项目需要实现跨页面跳转,并跳转到指定地点,试了很多方法,有用到传递参数然后让页面滚动相应的距离,但是一旦文章长短发生变化,滚动的距离也需要重新计算,比较麻烦,所以最后总结出这两种比较靠谱的方法,只需要在需要跳转的地方加上合适的id就行,原理和单页面内跳转相似。

detail.component.html

<p>You'll see which payment methods are available to you on the checkout page, before you submit a reservation request. After you select your country, all of your payment details will be shown.</p>
<p id="readMore">We charge featured guide who offer journey a 15% service fee. The amount of the service fee is calculated from the price that featured guide set for their journey. You will see the service fee when you set your price before submitting a journey. The service fee is automatically deducted from the payout to the Host.
  

Depending on the laws of the jurisdiction involved, VAT may be charged on top of the service fee. The service fee will include these VAT charges when applicable.</p>

app.component.html

<button (click)="readMore()">ReadMore</button>

app.route.ts

{ path: '',component: LoginComponent},
 { path: 'detail', component: DetailComponent },
 { path: '**',component: NotFoundComponent}

方法一:新增路由地址来实现

app.route.ts

{ path: '',component: LoginComponent},
 { path: 'detail', component: DetailComponent },
 { path: 'detail#readMore',component: NotFoundComponent},
 { path: '**',component: NotFoundComponent}

app.component.ts

readMore() {
this.router.navigateByUrl('/detail#readMore');
 }

detail.component.ts

ngOnInit() {
 if (window.location.hash === '#readMore') {
  window.location.assign('detail#readMore');
 }
 }

方法二:在原路由地址不变的情况下,利用路由传递参数来实现

app.component.ts

readMore() {
 this.router.navigate(['/detail', { id: 'readMore'}]);
 }
detail.component.ts

this.myActivatedRoute.params.subscribe(
  (data: any) => {
  if (data.id === 'readMore') {
   window.location.assign('detail#readMore');
  }
  }
 );

以上这篇Angular 利用路由跳转到指定页面的指定位置方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
js函数般调用正则
Apr 08 Javascript
JavaScript中各种编码解码函数的区别和注意事项
Aug 19 Javascript
js 图片随机不定向浮动的实现代码
Jul 02 Javascript
JavaScript 实现打印,打印预览,打印设置
Dec 30 Javascript
JavaScript按值删除数组元素的方法
Apr 24 Javascript
原生js实现图片轮播特效
Dec 18 Javascript
移动端H5开发 Turn.js实现很棒的翻书效果
Jun 20 Javascript
基于JS实现仿百度百家主页的轮播图效果
Mar 06 Javascript
js HTML5 canvas绘制图片的方法
Sep 08 Javascript
在Node.js下运用MQTT协议实现即时通讯及离线推送的方法
Jan 24 Javascript
vue 实现微信浮标效果
Sep 01 Javascript
vue-cli点击实现全屏功能
Mar 07 Javascript
Vue 莹石摄像头直播视频实例代码
Aug 31 #Javascript
JavaScript实现简单的隐藏式侧边栏功能示例
Aug 31 #Javascript
Vue加载组件、动态加载组件的几种方式
Aug 31 #Javascript
Bootstrap模态对话框用法简单示例
Aug 31 #Javascript
微信小程序视图容器(swiper)组件创建轮播图
Jun 19 #Javascript
angular 实时监听input框value值的变化触发函数方法
Aug 31 #Javascript
vuejs实现ready函数加载完之后执行某个函数的方法
Aug 31 #Javascript
You might like
PHP utf-8编码问题,utf8编码,数据库乱码,页面显示输出乱码
2013/04/08 PHP
php中的filesystem文件系统函数介绍及使用示例
2014/02/13 PHP
Laravel使用scout集成elasticsearch做全文搜索的实现方法
2018/11/30 PHP
使用TextRange获取输入框中光标的位置的代码
2007/03/08 Javascript
Prototype 学习 工具函数学习($A方法)
2009/07/12 Javascript
JavaScript DOM学习第六章 表单实例
2010/02/19 Javascript
jquery利用ajax调用后台方法实例
2013/08/23 Javascript
ExtJS如何设置与获取radio控件的选取状态
2014/01/22 Javascript
Jquery 返回json数据在IE浏览器中提示下载的问题
2014/05/18 Javascript
Javascript判断图片尺寸大小实例分析
2014/06/16 Javascript
js实现不提交表单获取单选按钮值的方法
2015/08/21 Javascript
js实现点击向下展开的下拉菜单效果代码
2015/09/01 Javascript
基于Bootstrap实现的下拉菜单手机端不能选择菜单项的原因附解决办法
2016/07/22 Javascript
JavaScript仿百度图片浏览效果
2016/11/23 Javascript
关于axios返回空对象的问题解决
2017/04/04 Javascript
微信小程序 功能函数小结(手机号验证*、密码验证*、获取验证码*)
2017/12/08 Javascript
快速解决Vue项目在IE浏览器中显示空白的问题
2018/09/04 Javascript
说说如何利用 Node.js 代理解决跨域问题
2019/04/22 Javascript
vue打开子组件弹窗都刷新功能的实现
2020/09/21 Javascript
Python异常处理总结
2014/08/15 Python
Python数据结构与算法之图的最短路径(Dijkstra算法)完整实例
2017/12/12 Python
Python使用matplotlib和pandas实现的画图操作【经典示例】
2018/06/13 Python
python topk()函数求最大和最小值实例
2020/04/02 Python
Python 基于jwt实现认证机制流程解析
2020/06/22 Python
keras用auc做metrics以及早停实例
2020/07/02 Python
ECCO爱步官方旗舰店:丹麦鞋履品牌
2018/01/02 全球购物
加拿大时尚潮流大码女装购物网站:Addition Elle
2018/04/02 全球购物
英国顶级珠宝品牌之家:John Greed
2018/06/09 全球购物
企业军训感言
2014/02/08 职场文书
安全责任协议书
2014/04/21 职场文书
校运会口号
2014/06/18 职场文书
2014最新开业庆典策划方案(5篇)
2014/09/15 职场文书
检查机关领导群众路线教育实践活动个人整改措施
2014/10/28 职场文书
土地租赁协议书
2015/01/29 职场文书
Java中使用Filter过滤器的方法
2021/06/28 Java/Android
多人盗宝《绿林侠盗》第三赛季4.5上线 跨平台实装
2022/04/03 其他游戏