我正在尝试
console.log
变量的值,但在浏览器控制台上,我没有打印变量(在我的例子中是一个对象),而是得到一个格式如下的代理容器
Proxy {}[[Handler]]: En[[Target]]: Array(0)[[IsRevoked]]: false
打开
[[Handler]]
时,我得到一些内部属性,其中包含 originalTarget
属性。
展开 originalTarget
时,会显示我的数据。
如何让这些数据在控制台中正确显示并在我的 LWC 中访问它?
如果您想查看代理数据,请使用此:
JSON.stringify(this.caseList)
如果您想在 lwc 中使用它,请使用以下命令:
let cases = JSON.parse(JSON.stringify(this.caseList))
console.log(cases);
希望以上解决方案对您有所帮助。如果是,请将其标记为最佳答案,以帮助其他人。
为什么我们不能直接获取值,而是使用 JSON 方法?我看到大多数人都直接获取值,而不需要使用 JSON 方法
原因:每当我们将任何 Javascript 对象标记为 @track 时,Salesforce 都会将该对象包装在创建代理对象中。
解决方案:@Rajat Jaiswal 回答。