使用箭头功能时将其获取为未定义

JavaScript Webpack

2020-06-02

我正在使用箭头功能,并且正在使用Chrome和Firefox Dev Tool进行调试。this即使代码仍然可以工作,仍无法定义。

我的假设是,它与源映射有关。

这是我用来构建我的代码的工具:

  • webpack(devtool:评估)
  • babel-loader(es5预设)
  • 打字机加载器

第4252篇《使用箭头功能时将其获取为未定义》来自Winter(https://github.com/aiyld/aiyld.github.io)的站点

1个回答
达蒙 2020.06.02

问题在于chrome调试器认为this源代码中的in指向运行时this,但是this TypeScript源代码中的arrow函数实际上已转换为_this,因此它向您显示了错误的对象。

这就是为什么这只是调试器中的一个问题,而代码仍然可以正常工作。当我需要调试问题所在的地方时,只需将其复制到控制台并在其前面加上下划线即可。

问题类别

JavaScript Ckeditor Python Webpack TypeScript Vue.js React.js ExpressJS KoaJS CSS Node.js HTML Django 单元测试 PHP Asp.net jQuery Bootstrap IOS Android