Hi! This is my first time using Observable.
Everything is going really smoothly, except for one thing. There is one cell of code that doesn’t get run when I refresh the page, and I need it to run because the viewof depends on it. I have to manually run that one cell in order for everything to work. The specific line is below (the variable ‘list’ is a Set … that is why I am converting to a list).
sortedList= Array.from(list).sort()
What could be the reason that this cell is not being run?
Thanks so much!
Hi, welcome! It’s a bit hard to figure out exactly what’s going on without seeing the details of your notebook; if you “Enable link sharing” and paste a link here we might be able to give specific pointers.
In general, note that cells are only guaranteed to run after their dependencies have returned a value. Is the cell possibly running earlier than you expect? You’ve probably seen this tutorial, but pay attention to what it says about “topological order”:
You can check the dependency graph of your notebook by using this neat tool:
Hi, thanks for your quick reply!
Can you view this?
for clarification, the line that is not running is sortedYearsSet = Array.from(yearsSet).sort()
And from the viewOf at the top, the set is empty, and thus cannot populate the dropdown list
Sure thing - just sent you a suggestion. The idea is to avoid mutation of existing values, so I tweaked the sortedYearsSet cell to create the Set and populate it all in one.
Hi Tom,
Thank you so much for your suggestion! That fixed the problem
Now I know about mutation and about using the Notebook visualizer as well (which was a super helpful tool). I am still getting used to the syntax and how Observable runs.
Glad things got figured out! Just so future readers can follow, I don’t see a link in any of your posts, but after searching on the main site it looks like you were referring to this notebook: