街机表达不显示在地图查看器

185
8
2022年12月29日07:09
AidanDonnelly
通过
新贡献者II

你好!我试图使用街机显示文本在地图查看器弹出。当我在新的街机编辑器中测试代码时,它完全符合预期:

var lines = FeatureSetById($map, /*下水道线路*/ "184e8d5e05b-layer-7");var bufferArea = Buffer($feature, 10, 'feet');var intersectedLine = First(Intersects(lines, bufferArea));var facilityId = ";if(intersectedLine != null){facilityId = intersectedLine. facilityId;} var cctvYears = FeatureSetById($map, /* SsTelevisedMains */ "184e8d5e05b-layer-8", ['LINETOPOINT', 'INSPECTION_DATE']);var filteredYears = Filter(cctvYears, "SEGMENT_ID = '" + facilityId + "'");var sortedYears = OrderBy(filteredYears, 'INSPECTION_DATE desc');var lastYear = First(sortedYears);var缺陷= FeatureSetByName($map, "SsCCTVConditions"); var LineToPoint = lastYear.LINETOPOINT; var filteredDefects = Filter(defects, "LINETOPOINT = '" + LineToPoint + "'"); var topDefect = Filter(filteredDefects, "Grade >= 3"); var allDefects = ''; for(var d in topDefect){ allDefects = allDefects + "(" + d.Grade + ")" + " Type: " + d.PACP_CODE + " Distance: " + Round(d.DISTANCE, 2) + "\n"; } return { type : 'text', text : allDefects //this property supports html tags }

但是,弹出窗口中没有显示任何内容:

aidandonnelly_0 - 1672326472861. - png

aidandonnelly_1 - 1672326491983. - png

根据我的配置,我假设表达式应该显示在Fields List的上方和Title的下方。我是否在弹出框中错误地实现了表达式?我可以确认相同的表达式在字段地图和地图查看器中新实现的表单中工作。

0荣誉
8回答说
Teresa_Blader
通过
临时贡献者II

我对街机也不是很熟悉,但我想知道你是要返回一个功能集还是一个功能?我也遇到过类似的麻烦。

我问这个问题是因为也许你需要先将代码添加到“属性表达式”和弹出窗口中的“Arcade”中,然后使用弹出窗口中的文本类型,在那里添加表达式{expression/expr0}等。不管它是在你的字段之前还是之后。

但我可能完全错了!

特蕾莎修女推土机
blader.teresa@co.olmsted.mn.us
奥姆斯特德县规划部
地理信息系统部门
0荣誉
RhettZufelt
通过 MVP常客
MVP常客

在“字段列表”中,选择字段并将复选框放在表达式旁边以选择该表达式。然后你可以在弹出框列表中移动它。

rhettzufelt_0 - 1672329960829. - png

R_

0荣誉
AidanDonnelly
通过
新贡献者II

嗨,瑞德,

谢谢你的回复!我试过了,然而,表达式没有出现在字段列表中:

aidandonnelly_0 - 1672333390388. - png

0荣誉
RhettZufelt
通过 MVP常客
MVP常客

它看起来好像你使用了+添加内容按钮在主弹出窗口编辑器中添加 Arcade Expression。

甚至不确定为什么这是在这里,因为它似乎没有效果(正如你所看到的)。

如果你去“属性表达式”选项并在那里添加表达式,它就会出现在选择字段列表中,并允许你将它添加到弹出框中。

rhettzufelt_0 - 1672334139505. - png

在Select fields窗口的底部还有一个选项,可以+ Add表达式。两种方法似乎都有效。

rhettzufelt_1 - 1672334205469. - png

R_

0荣誉
Teresa_Blader
通过
临时贡献者II

我在创建自定义图表时使用街机选项!你会注意到在“+Add Content Arcade”版本中,有一些自定义图表模板可用,而这些模板在属性表达式中是不可用的。属性表达式只在尝试创建额外的自定义时有用,动态地,属性,作为一个单独的“特性”。添加内容街机的方式,创造“功能集”……这是定制图形所需要的。不能在属性表达式中创建“特性集”。

特蕾莎修女推土机
blader.teresa@co.olmsted.mn.us
奥姆斯特德县规划部
地理信息系统部门
0荣誉
AidanDonnelly
通过
新贡献者II

嗨,特蕾莎修女,

这就是我想要做的-在Arcade编辑器中,我看到有字段列表,图表和富文本的模板-我希望将结果字符串从我的表达式加载到富文本中,并在字段列表之外显示,以便观众清晰。

0荣誉
Teresa_Blader
通过
临时贡献者II

呵呵,明白了!好吧,我还没有尝试过富文本!但是这个Esri博客似乎把var放在${variable name}里面,而看起来你只是把allDefects放在里面。返回${allDefects}有区别吗?

第1部分:介绍街机弹出式内容元素

特蕾莎修女推土机
blader.teresa@co.olmsted.mn.us
奥姆斯特德县规划部
地理信息系统部门
0荣誉
Teresa_Blader
通过
临时贡献者II

我还注意到他们将整个返回文本放在“”重音中

特蕾莎修女推土机
blader.teresa@co.olmsted.mn.us
奥姆斯特德县规划部
地理信息系统部门
0荣誉