Customize widgets/code in ArcGIS Online Experience Builder?

995
3
Jump to solution
07-26-2023 04:39 AM
tcyd
by
New Contributor II

I am relatively new to ArcGIS Online and recently I built an app in ArcGIS Online Experience Builder and would like to expand it to allow end-users to modify the layers/symbology on the map displayed, or to perform spatial analysis in the Experience. Yet, the widgets on AGOL ExB is limited and this could not be done.  

As such, I am looking for solutions.  I came across this and I found that it could be done via ArcGIS API for Javascript, and I do notice you could use the Embed Widget to insert code written through Javascript. Meanwhile, I also noticed that customs widget can be built through ArcGIS Experience Builder but seems it is applicable to ArcGIS Online.

As such, I am asking whether ArcGIS Maps SDK for JavaScript (or other languages) is the only way to achieve my goal or if there are other solutions. It has to be on ArcGIS Online. Many thanks for your read and help!


Thank you for your help.

0 Kudos
1 Solution

Accepted Solutions
JeffreyThompson2
MVP Regular Contributor

Short Answer: The ArcGIS Online Version of Experience Builder probably won't get you what you need.

Let's break the long answer down into parts.

  • Can you use default widgets to change map symbology? Not possible as far as I know.
  • Can you use default widgets to do spatial analysis? Yes, depending on exactly what you want to do. There are a number of widgets that can do various spatial analysis functions.
  • Can you use the Embed widget to access the Javascript API directly? No, the Embed widget only allows HTML code and even that is limited due to security concerns.
  • Can you use Javascript API features within Experience Builder? Absolutely, you can download the developer edition of Experience Builder. Make something that uses something from the API and when everything is ready you can deploy it on ArcGIS Online.
  • Can you build the map linked to in your question in Experience Builder? No, the article you linked to was written about the 3.X version of the Javascript API. Experience Builder is based on the 4.X version of the API. They are not compatible and the 3.X version is nearing end-of-life. You will need to find the equivalent functionality in the 4.X version. It should be in there somewhere.
GIS Developer
City of Arlington, Texas

View solution in original post

3 Replies
JeffreyThompson2
MVP Regular Contributor

Short Answer: The ArcGIS Online Version of Experience Builder probably won't get you what you need.

Let's break the long answer down into parts.

  • Can you use default widgets to change map symbology? Not possible as far as I know.
  • Can you use default widgets to do spatial analysis? Yes, depending on exactly what you want to do. There are a number of widgets that can do various spatial analysis functions.
  • Can you use the Embed widget to access the Javascript API directly? No, the Embed widget only allows HTML code and even that is limited due to security concerns.
  • Can you use Javascript API features within Experience Builder? Absolutely, you can download the developer edition of Experience Builder. Make something that uses something from the API and when everything is ready you can deploy it on ArcGIS Online.
  • Can you build the map linked to in your question in Experience Builder? No, the article you linked to was written about the 3.X version of the Javascript API. Experience Builder is based on the 4.X version of the API. They are not compatible and the 3.X version is nearing end-of-life. You will need to find the equivalent functionality in the 4.X version. It should be in there somewhere.
GIS Developer
City of Arlington, Texas
Clubdebambos
Occasional Contributor III

Hi @JeffreyThompson2 

  • Can you use Javascript API features within Experience Builder? Absolutely, you can download the developer edition of Experience Builder. Make something that uses something from the API and when everything is ready you can deploy it on ArcGIS Online.

Does this mean it is possible to create a widget with ExB, add said widget to a webapp and deploy in AGOL where users can use the app and the custom widget?

Going through older answers before I go down the road of a new post.

Cheers,

Glen

~ learn.finaldraftmapping.com
0 Kudos
JeffreyThompson2
MVP Regular Contributor

The answer above is a bit wrong. You cannot deploy your final Experience Builder project from Developer Edition to ArcGIS Online. It needs to be deployed online (no-caps, no ArcGIS) to a webserver. It will still be connected to your ArcGIS Online environment for its data needs, but you will be responsible for deploying it to a stand-alone server and the Experience will not show up in your organization's items on ArcGIS Online.

GIS Developer
City of Arlington, Texas