Genie Discord forum
😥 Apologies if I am making a n00b mistake, but the behavior that I see is not intuitive. Each time I configure a slider Main Properties, it overwrites the Main Properties of the other sliders and the plot.
For example: I have configured my slider for my "A" polynomial coefficient.
When I move to configure my next slider for my "B" coefficient, it is already populated.
However, the HTML code is still correct for the slider (from the last time I had configured it)
This is not supposed to happen, as the elements should have empty properties by default. Did you copy/paste the sliders? Can you check in the HTML if the ID of each element is different?
Also, the data type for the sliders is int. The ABCD variables should be initialised to an integer
Hi @Pere thanks for yoru response. Yes, the element ID is different for each of the sliders... so I was not overly concerned.
Is the data type int? I have just used sliders where the increment was 0.1 or 0.01 in Pluto. The data type returned was actually an array.
Sorry, yes. It can be float as well. Just not string or list like you had
Hmmm, I just looked back at the HTML code and noticed something strange
Two of the sliders had ID's, the other two had none
Unfortunately, after closing my project and opening it again, I cannot seem to access the builder to make any changes. 😳
🐤 I am a n00b
Can you share what the explorer window looks like?
Oh you mean the no code editor okey you can open it clicking the eye icon to the left
I don't think I see that eye icon
I'm using the regular Genie Builder, not Genie Cloud
Yes, the UI is the same
I will bet that if I click on + to create a new genie app, then it will work
the only icons I have for polynomialmanipulation is start (or stop) depending on the state
I think you're looking in the wrong place. The button appears in the GENIE APPS tab after the app has started. In the screenshot the app is not running
Okay, it was running in my 1st screen shot
You start the app, then unfold the apps menu and then next to GET you'll see it
It's running now, but there is no eye
Oh well, that's probably because of the error preventing the app from running
Can you share your app.jl?
And terminal output as well please
Here is the app.jl
As we chatted, I have added random 5 letter ID's to the two sliders that had none... I can attach the HTML file as well... if it would help
Ok i see it. This is something that we should make clearer, sorry.
Reactive variables declared with in and out are only accessible from within an @onchange block. They do not exist outside of it. So, the line result = calc_polynomial(A,B,C,D) cannot be evaluated
Okay, so I would just need to change where I call the function?
I left one call to calc_polynomial under "out" so I could plot the initial plot before a slider was touched
Yes, you can't call calc_polinomial outside an @onchange block. To do what you want, use @onchange is ready begin...end. The isready variable is automatically created and it becomes true when the page is done loading
I thought that assigning the variables from the @in fixed values would allow me to plot the function 1x^3 + 1x^2 + 1x + 0
Okay, got it. Thanks.
so what is the best way to set the initial value of the sliders?
Pluto had a field for the default value
See the video about the iris tutorial, i talk about the isready thing there.
Right when you declare the variable. @in and @out vars always need a default value
Ok, thank you. I have bookmarked the article.
so technically, I can comment out everything between @geenietools and @page... then basically run this as an empty julia project and I should be able to see the webpage, right?
... so I ran that , with "empty" julia file, and my drag-and-drop build tools came back
You'd have to comment the code inside @app as well, otherwise calc_polynomial will be undefined
Yes, you were definitely right. It looks like the error prevented the build tools from working. Although, I still don't see an eye
the build tools still show incorrect field values for the GUI components though... Not sure why that is happening 🤔
Perhaps the old values are still in memory? Try restarting the Genie server. Also, to see the exe you need to expand the app's tab. The terminal looks like all is fine
Confirmed, the eye icon and all of the other Genie Apps have come back
@Pere has the MAGIC TOUCH ❤️🔥 💎 🥇
I swear that I have tried all of this earlier when I tried to troubleshoot this challenge
hahaha, I'm glad it all works now. We'll try to make the experience a little smoother 😅
thanks a lot for all of your help @Pere and I'm going to mention you and link this to the other thread I posted. I am no longer receiving that error 404 anymore.
----------------------- Quick Summary --------
Fixed a couple of things here ...
- The HTML file had two sliders missing ID's. I manually added ID's to the HTML file.
- @Pere told me to AVOID calls to bound variables (per responsive design) outside of the @onchange block. I bulk commented out the code so that between @geenietools and @page within the app.jl file. As a result, I was able to run without error, and the interactive build tools came back.
- Afterward, I did not see the "eye icon" in Genie Apps for my project, but restarting the Genie Server and rerunning the app did fix that.
- Finally, I used the browser to navigate to the Genie Server address and I was able to view the HTML code for my app, where previously I would end up reacing Error 404
@Pere Thank you again for all of your attention today!! I hope this quick summary helps any other n00bs like me 👍
thanks @GenerallyClueless ! I'm actually preparing some new materials for newbie, so this'll come in handy
got to be some appropriate gifs for my start with julia/Genie... like tripping and falling off a boat 🤣