So, I want the make generator to remember user inputs and the latest generated output using the remember plugin, it works on user input but not for the output. I know there's a solution for this since generators like AI Chat can remember the chat logs without problem but I'm too dumb to understand the code lol
Also, how can I prevent the AI to automatically generate output on first load? I'm using the firstload = true tingy but I want to make it look cleaner when the generator loads since it 's displaying the [firstLoad ? "" : output] for a split second, is there any other method for this?
5 Comments
VioneT@lemmy.world · 2 pts · 1y
Can you share the generator you are working on? You could set a variable that is attached to the remember plugin, then upon generation, update that variable with the generated output. Then upon load of the page, you would then retrieve that from the remember plugin and display it. As for preventing it to run, you could remove it, then on the button you use to 'update()', you can have
idOfContainer.innerHTML = ai(output)to set the output of the ai to that container.darksideEx@lemmy.world · 1 pts · 1y
I’m just making random generators atm, trying to figure out how it works for later use since I’m not really active in the platform, but I’ve tried putting the output alongside with the @inputs to the plugin code like this:
[remember(root, "@inputs,output")]and got an error message like this:It seems the plugin is currently not supporting AI output text, also, thanks for the output suggestion!
EDIT: I think I've figured out the solutions for both of my problems thanks to AI code helper 👍
wthit56@lemmy.world · 2 pts · 1y
You can use localStorage to save and restore things with code. I believe that's what the remember plugin uses to save things anyway.
So you'd do something like
localStorage.setItem("last generated", data.generatedText)which will save it. And when you load, you can useloaded = localStorage.getItem("last generated"); if (loaded) { element.innerText = loaded; }which would put the text in an element with the id "element", if there was anything stored in the first place.You can look up more about localStorage on MDN.
darksideEx@lemmy.world · 1 pts · 1y
Sorry for the late response, unfortunately, I'm just started learning coding recently, especially JS, I might need to read a bit more about this lol thanks for the link!
EDIT: Just wanted to let you know that I've figured out a solution thanks to the AI code helper, it basically wrote the similar function:
And just simply put the
oninput="saveData()into both input and output elements.wthit56@lemmy.world · 1 pts · 1y
Yep that looks good 👍