即使我尝试了所有解决方案,我仍然看到标题中的错误。关于null的值;
If my code is ;
Output: TypeError: Cannot read property of null
case '!facebook':
face.Profile(facebook, function(result) {
let like = result.profiles.like;
let comments = result.profiles.comments;
if(like === null || comments === null){
//code.
}
else {
//code.
}
});
break;
答案 0 :(得分:0)
在引用下一个级别之前,您必须验证对象的每个子级是否存在。在您的情况下,这意味着先尝试result
,然后再尝试result.profiles
的存在,然后再尝试使用profiles
中的任何对象值。请参见下面的代码。
在没有看到您的case
语句的其余部分或如何设置face
的值的情况下,很难确定您是否会遇到其他问题。
case '!facebook':
face.Profile(facebook, function(result) {
// Set default values
let like = null;
let comments = null;
// Set values only if there's a result containing profiles
if (result && result.profiles) {
like = result.profiles.like;
comments = result.profiles.comments;
}
if (like === null || comments === null){
//code
} else {
//code
}
});
break;