记一次使用wow.js 报错,config is not defined

使用wow.js的时候出现了如下图的报错,虽然不影响使用,但是总看着不爽。

在这里插入图片描述

定位到报错位置,发现全部都压缩成了一行,用编辑器格式化一下就舒服多了。或者使用未压缩的版本也可以。
在这里插入图片描述
格式化之后刷新浏览器,发现错误在133行。

在这里插入图片描述
代码经过混淆,阅读起来稍微有点困难。

先看一下wow.js是怎么用的。

在这里插入图片描述
可以猜测到,代码中的e即指代WOW,config即指实例化时传入的参数,看到其他地方有使用config.mobile就能确认。

报错的代码在一个resetAnimation函数中,先打印一下this看看。
在这里插入图片描述
看一下浏览器输出,居然是一个div,有点懵了。
在这里插入图片描述
看一下其他地方调用this.config的地方,打印一下this。

在这里插入图片描述
很明显,这两个this不一样。。。
在这里插入图片描述
到这里我有些懵逼,都是我学艺不精。。。

随手搜索了一下resetAnimation,发现有四个地方似乎是使用时间监听来触发resetAnimation,难不成是因为这个原因导致this指向出现问题?
在这里插入图片描述
试着在后面加上bind(this)
在这里插入图片描述
查看一下浏览器,发现resetAnimation里面输出的this好像正常了。
在这里插入图片描述
Yes!接下来把resetAnimation中的config改成this.config就完成啦!
至此,报错消失。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值