1. The documentation for advanced formatting in Experience Builder states:
Each app page supports a maximum of 10 Arcade expressions using the widget formatting profile, including both dynamic content and dynamic style set by Arcade script.
2. I'm not actually doing anything terribly fancy--here's my use case:
I'm trying to build an application in Experience Builder that provides much of the same functionality as an existing application (that wasn't built with any Esri products). Essentially, the user can explore various datasets through maps, charts, and tables. Throughout, the filtering experience is such that the values the user chooses are presented in the filters themselves, so the user can remember what they chose out of the sometimes many, many options:
This isn't possible with the filter widget in Experience Builder. Instead, the user sees the number of values they chose from the list:
I have a lot of charts in this experience, and for some of them (because they're so flexible in terms of the filtering options), it might be hard for a user to remember the context of what they're looking at.
For example, here's a chart that displays the sum of tests by year, categorized by county. The user can filter this chart by county, year, species, and/or test result. The first two variables are already covered in the chart itself, but the species and test result values are not. With the new Arcade capabilities in Experience Builder, I can just print out the species and test result values (filtered by the user) that are contributing to the chart:
However, I'm finding myself already hitting the limit in terms of number of expressions that use $dataSources per page.
I know there are other things I can do, like:
This isn't critical. Either we can trust the user to refer back to what they filtered, or we put some kind of reminder, BUT it would make the user experience much better to just be able to see what's contributing to the data you're seeing.
3. Once you add 10 expressions, it becomes impossible to edit your existing expressions without first sending one of them to the pending list.
This is kind of annoying. I could see myself being in the middle of doing this, then getting a message from someone, and totally forgetting to bring the 10th expression back from the pending list.
Hi @NicoleJohnson ,
1 – When the page loads, all Arcade expressions on that page are evaluated at once, which can use a lot of resources. This limitation is in place to help maintain performance and avoid potential bugs.
2 – It’s a bit tricky to remove this limitation, a workaround is to use HTML format and keep just one Arcade expression per text widget. That should help reduce the overall number.
3 – That last one is a bug and will be fixed in the next release.
Regards,
Shengdi
Thank you!
I'm already using one expression per text widget (i.e., the species and test result values are coming from one expression, with HTML formatting). I just have like 11 or 12 charts on this page, so either have to decide if I want to scrap them entirely or only do some of them...
Regardless, Arcade in ExB is fantastic and I'm looking forward to using it elsewhere.