Hi Perchance!
Trying to understand the inner workings of Perchance t2i-framework-plugin-v2 I cloned this plugin and added a few console.info()
lines.
Especially in and around function updateInputVisibilities()
(line 145+) to learn how userInputs[name]
was set up.
Using my version of the t2i-framework plugin in a generator I saw in the console that on Generator pageload the function updateInputVisibilities()
gets triggered by ___pageLoadHandler746291937()
(which is to be expected, we need the elements set up), but also that ___selectElChangeEvent746291937()
gets triggered for each <input>/<select>/<textarea>
in the generated HTML.
In my case updateInputVisibilities()
got triggered 21 times on Generator pageload instead of just once. The function gets triggered for each list/input used in the generator.
After some searching I found out that this is caused by the remember-plugin.
On Generator startup remember-plugin retrieves values from localStorage and updates the various input elements in the HTML, as to be expected. However, in doing so, it changes the element.value
which in turn triggers the element.onchange
event triggering ___selectElChangeEvent746291937()
. While true, something has indeed changed, it is unwanted behaviour on pageload.
This little bug also unveiles that t2i-framework-plugin-v2 executes updateInputVisibilities()
for each change in a single <select>
updating all other selects as well.
I am still working my way into these two plugins, so I cannot exactly pinpoint what code needs to be changed. With just a few remembered inputs in localStorage it does little harm, but with large amounts of inputs, pageload time gets unnecessarily long.
My versions (for testing):
Be aware: when loading the generator for the first time with an empty localStorage nothing special will be noticed, however:
- Change a few selects to fill localStorage
- Clear the DevTools console to get rid of clutter
- reload the generator => [Ctrl-F5]
- Check the console info
- Check if ‘Danno Count’ is >1
- Filter console with ‘trigger’ to see the amount of
___selectElChangeEvent746291937()
getting triggered
Thanks for the input, but this is a Javascript coding issue inside the plugin(s), not directly related to Perchance syntax for creating generator lists.