首页 > 解决方案 > Nil Val 固定 rhx

问题描述

我正在使用 FiveM 中的脚本,当服务器启动时,我在控制台中收到“尝试调用零值(本地'cb')”作为错误。请参阅下面的代码,讨论 nil 值为 cb(nil)。

AddEventHandler("f:getPlayer", function(user, cb)
    if(Users)then
        if(Users[user])then
            cb(Users[user])
        else
            cb(nil)
        end
    else
        cb(nil)
    end
end)

所以我发现了一篇关于在“if(Users)then”中添加“and cb”的帖子,所以代码看起来像这样。

AddEventHandler("f:getPlayer", function(user, cb)
    if(Users and cb)then
        if(Users[user])then
            cb(Users[user])
        else
            cb(nil)
        end
    else
        cb(nil)
    end
end)

但这并没有解决问题。

结果是让错误消失。

标签: luagrand-theft-autofivem

解决方案


所以我发现了一篇关于在“if(Users)then”中添加“and cb”的帖子,所以代码看起来像这样。

这是正确的。但是即使变量“cb”不包含它,您也可以在代码中调用功能对象。

你的代码应该是这样的:

AddEventHandler("f:getPlayer", function(user, cb)
    if cb then 
        if Users then
            cb(Users[user]) 
        else
            cb(nil)
        end
    end
end)

与:

 AddEventHandler(
    "f:getPlayer", 
    function(user, cb)
        if cb then
            cb(Users and Users[user] or nil)
        end
    end
)

推荐阅读