`caDelete` 方法报错?

TypeError: Cannot read property 'canDelete' of undefined 是什么原因呢?

reply.can_delete = this.canDelete(user, reply)
.
.
.
canDelete(user, reply) {
    if (!user) {
        return false
    }

    return (reply.user_id === user.id)
}
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
讨论数量: 7

不要 canDelete方法

// 控制是否可以删除
if (!user) {
    reply.can_delete = false
} else {
    reply.can_delete = (reply.user_id === user.id)
}

暂时解决了问题 :joy:

5年前 评论
liyu001989

Cannot read property 'canDelete' of undefined

为什么 this 会是 undefined,去看一下github 上的项目源码,对比一下吧

5年前 评论
你看我吊吗啊

@liyu001989 这应该是ES5 es6的差异吗。。我是后端 没有阅读这些规范

 replies.forEach(function (reply) {

上方是教程的(严格的说应该是教程之前章节写的和本章不同),下方是Github的。。

 replies.forEach((reply)=> {
5年前 评论

@JeffLi (reply) => {} 等同于 function (reply) {} ES6 箭头函数了解一下~

5年前 评论
你看我吊吗啊

@TYu 我知道啊,但是我前端不熟悉,我只知道,改成这样就不报错了。。

5年前 评论

@JeffLi 哈 前段我也不熟 只是稍微了解 - -

5年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!