获取私有属性

博主在实现Angular面包屑功能时遇到获取上一路由路径的难题,发现Router类的transitions属性是私有的。尽管能在控制台打印,但因代码审核无法通过,导致打包失败。通过查阅MDN,博主找到了解决方案——利用Reflect.get()方法安全地获取私有属性,成功解决了问题。
摘要由CSDN通过智能技术生成

        今天在弄ng的一个面包屑功能,需要获取到上一路由的路径,找了半天在@angular/router下的 Router 中找到了 transitions 属性,于是进行了属性打印,根据我3年的编码经验,事情果然没有想象中的那么简单,于是在我打印的时候编辑器报了个错误(见下图)

图中说 属性“transitions”为私有属性,只能在类“Router”中访问。

注:私有属性,是指在类内可以直接访问、而在类外无法直接访问的属性。

虽然能在控制台打印出来,但是代码审核无法通过,也就是没法打包

在经过不懈的努力之后,终于在 MDN 找到了解决办法

语法

Reflect.get(target, propertyKey[, receiver])

参数

target

需要取值的目标对象

propertyKey

需要获取的值的键值

receiver

如果遇到 getter,此值将提供给目标调用。

 使用 Reflect.get() 完美解决

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值