我正在使用Angular,并且尝试访问我的对象的属性img,并且在执行整个对象的console.log(..)
时。值在那里,但是当我对对象的属性进行c onsole.log(..)
时,它说它为空。
console.log("Product:", this.article);
var url = this.article.img;
console.log("Image" , url);
控制台:
如果this.article.img
,我不知道怎么办;在console.log
中似乎具有某些价值。但是当我尝试访问它时,它说它为空。怎么来的?
答案 0 :(得分:5)
该对象不会立即呈现。您的img
属性在记录时具有一个null
值,但是稍后在控制台中打开该对象时,该属性将被填充。
您可以通过登录console.log(JSON.stringify(this.article))
进行检查。
出现问题的最可能原因是一些异步代码,您没有正确等待其成就。正如您所说的那样,该对象是从数据库中获取的,我想您会忘记在回调中使用该对象(可能基于Promise)。
答案 1 :(得分:1)
代替日志记录:
P
尝试debugging,以便您可以实时检查该值:
console.log("Product:", this.article);
var url = this.article.img;
console.log("Image" , url);
答案 2 :(得分:-1)
因为浏览器控制台可以在大多数现代客户端中使用引用:
请注意,如果您在最新版本的Chrome和Firefox中记录对象,则在控制台上登录的内容是对该对象的引用,这不一定是您当时的对象的“值”调用console.log(),但这是单击对象时打开该对象时的值。
请参阅:https://developer.mozilla.org/en-US/docs/Web/API/Console/log