Javascript &引用;null不是一个对象";在n.parentNode.removeChild表达式中
问题: 我从生产网页上收到以下错误报告:Javascript &引用;null不是一个对象";在n.parentNode.removeChild表达式中,javascript,exception,web-applications,sentry,Javascript,Exception,Web Applications,Sentry,问题: 我从生产网页上收到以下错误报告: TypeErrores6-shim/es6-shim in process null is not an object (evaluating 'n.parentNode.removeChild') 问题 在低层次上,最有可能的情况是什么 n是null(无论n是什么) n.parentNode为null n.parentNode.removeChild(arg) 更多详细信息(如果相关): 我们使用哨兵错误报告系统来报告错误 此错误发生在Mobile
TypeErrores6-shim/es6-shim in process
null is not an object (evaluating 'n.parentNode.removeChild')
问题
在低层次上,最有可能的情况是什么
n
是null
(无论n
是什么)n.parentNode
为null
n.parentNode.removeChild(arg)
源映射似乎已损坏,因此我不知道错误指的是es6垫片脚本的哪一行(很可能是es6垫片问题,因为es6垫片代码中没有出现removeChild)。您可以轻松设置所有三种情况以确定它是哪一行():
var n,p;
log(“如果n为null:”)
试一试{
n=零;
n、 parentNode.removeChild(空);
}渔获物(e1){
控制台日志(e1消息);
}
log(“如果parentNode为null:”)
试一试{
n=document.createElement(“div”);
n、 parentNode.removeChild(空);
}渔获物(e2){
console.log(e2.message);
}
log(“如果参数为空:”)
试一试{
p=document.createElement(“div”);
n=document.createElement(“div”);
p、 儿童(n);
n、 parentNode.removeChild(空);
}渔获物(e3){
console.log(e3.message);
}
。作为控制台包装器{
最大高度:100%!重要;
}
您可以轻松设置所有三种情况以确定它是哪种情况():
var n,p;
log(“如果n为null:”)
试一试{
n=零;
n、 parentNode.removeChild(空);
}渔获物(e1){
控制台日志(e1消息);
}
log(“如果parentNode为null:”)
试一试{
n=document.createElement(“div”);
n、 parentNode.removeChild(空);
}渔获物(e2){
console.log(e2.message);
}
log(“如果参数为空:”)
试一试{
p=document.createElement(“div”);
n=document.createElement(“div”);
p、 儿童(n);
n、 parentNode.removeChild(空);
}渔获物(e3){
console.log(e3.message);
}
。作为控制台包装器{
最大高度:100%!重要;
}
输入一些调试代码,查看调用前n是什么。parentNode为空的唯一元素是文档本身。如果arg为null,我希望出现不同的错误,如“arg必须是节点”或类似的错误。@RobG:任何没有添加到DOM中(或从中删除)的元素也有一个null
parentNode
,例如document.createElement(“div”)。parentNode
为null
@t.J.Crowder-yes,没有想到这一点。另外,我猜从DOM中删除的任何节点都有引用。@Piotr Sobczyk如果您显示一些html和js代码,这会很有帮助。@AabirHussain问题是,我不知道从我的源代码的何处抛出异常。我得到的只是生产服务器报告的错误消息,代码中没有确切的位置。在我的代码库中有几个地方有removeNode,它可能来自某个外部库。在调用之前输入一些调试代码,看看n是什么。parentNode为空的唯一元素是文档本身。如果arg为null,我希望出现不同的错误,如“arg必须是节点”或类似的错误。@RobG:任何没有添加到DOM中(或从中删除)的元素也有一个null
parentNode
,例如document.createElement(“div”)。parentNode
为null
@t.J.Crowder-yes,没有想到这一点。另外,我猜从DOM中删除的任何节点都有引用。@Piotr Sobczyk如果您显示一些html和js代码,这会很有帮助。@AabirHussain问题是,我不知道从我的源代码的何处抛出异常。我得到的只是生产服务器报告的错误消息,代码中没有确切的位置。我的代码库中有几个地方有removeNode+它可能来自一些外部库。回答得很好。一些非常有用的信息来帮助我进一步调试它!谢谢,回答得很好。一些非常有用的信息来帮助我进一步调试它!非常感谢。