arrow function的一个坑

今天在写Vue官网demo的时候,在写computed的时候,写了以下代码


var vm = new Vue({

    el: '#app',

    data: data,

    computed: {

        reversedMessage: () => {

            return this.message.split('').reverse().join('');

        }

    }

});

结果发现reversedMessage方法的时候报split on undefined错误,查了下arrow function的mdn文档, 原来arrow function是不绑定this的,所以会导致代码中的this就是Window,window中没有message,最后出现上面的错误, 改成正常的function() {} 就可以解决问题。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容