Skip to content

[FEAT]: Tab Control doesn't load all tabs on creation. #1949

@ScottKemp

Description

@ScottKemp

Is there an existing issue for this?

  • I have searched the existing issues

Current Behavior

Yes, you might consider this a feature. LOL But for my use case I consider it a bug. It also functions differently than other Lowcode tools such as Retool. At least consider having an option to load all tabs.

The basic bug is that all the components within all tabs are not created when the tab control is loaded. I am sure you are doing this for performance issues, but consider that if making it faster breaks use cases, then I wont be using it anyway (although I need it)

I have an attached application that shows my usecase and the errors with it. I want to have multiple tabs where I can seperate the different areas of input for a complicated record. For example, a "Contact" might have an address tab where all the address fields are located.

This is to prevent having one long, scrolling form and not use the tab control.

So my case is I have some kind of query that loads the Contact record, then use default values in all the controls to push the data to the controls. Then I have a single save query that will pull from all the controls accross all tabs, and save back to the database.

The problem is if the user doesn't click to the other tabs, the controls aren't wired and the save record query will overwrite the values with incorrect NULL data.

This, as well as my bug #1941

Is preventing me from using the tab control, in what I would consider a very obvious and useful UI pattern. Again, Retool has neither of these buggy behaviors and I use it all the time to do more complex record editing.

Expected Behavior

I expect to at least have an option like "Create All Tabs On Load" or something. This would create and wire up all tabs and their controls when the tab control is created.

This way all the record data pushed to all the controls accross all tabs. Then when you click save, it will properaly save all data.

Steps to reproduce

See attached APP. Click the LOAD, note that AGE is not wired, and then click SAVE. observe that we have now clobbered age with a NULL.

Now try to Refresh Browser. Click LOAD, Click Tab2, then click Save. Note that Age is now wired. This works, but of course we count count on the user to open ever single tab before clicking save.

BUG_TabsDontLoad.json

Environment

Self Hosted 2.7.3

Additional Information

No response

Metadata

Metadata

Labels

ComponentsDedicated to Frontend Visual ComponentsJavascript FrontendPull requests that update Javascript code

Projects

Status

🆕 New

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions