PowerApps中无法访问集合内JSON数据的技术咨询
解决PowerApps中集合内数据无法正常在画廊显示的问题
嘿,我来帮你搞定这个PowerApps里的集合数据访问问题!
问题根源
你用Collect(coll15, mt.GetAnswers("3b....da","application/json",{question:"eco"}))创建集合时,实际上是把整个API响应对象(也就是包含answers数组的那个顶层对象)放进了coll15里。这就导致集合里其实只有1条记录,这条记录里的answers字段才是你真正需要的数组数据——这就是为什么画廊控件只能看到部分选项,因为它默认遍历的是集合的顶层记录,而不是嵌套的answers数组。
两种解决办法
方法1:直接收集answers数组(推荐)
修改你的Collect语句,直接提取API响应里的answers数组来创建集合:
Collect(coll15, mt.GetAnswers("3b....da","application/json",{question:"eco"}).answers)
这样coll15里的每条记录都会对应answers数组中的一个对象(包含answer、questions、score字段),之后直接把画廊的Items属性设为coll15就能正常显示所有数据了。
方法2:调整画廊的Items属性(适合不想修改Collect语句的情况)
如果已经创建好集合不想改动,那直接修改画廊的Items属性,指向集合里的嵌套数组:
coll15.answers
这样画廊就会遍历answers数组里的所有对象,你就能看到完整的选项内容了。
验证集合结构(可选)
你可以在PowerApps编辑器里用View(coll15)查看集合的结构,确认是不是只有1条顶层记录,里面包含answers数组——这能帮你快速定位类似的嵌套数据问题。
内容的提问来源于stack exchange,提问作者Mark Tait
相关产品推荐
相关产品推荐

