form-tracker
Reactive icon

Form Tracker

Stable version 1.0.0 (Compatible with OutSystems 11)
Uploaded
 on 29 Jan (yesterday)
 by 
0.0
 (0 ratings)
form-tracker

Form Tracker

Details
This component automatically detects changes in forms and alerts the user when they try to leave the screen without saving their data. It monitors actual changes in fields and displays a standard browser warning only when the form has been modified, avoiding unnecessary alerts. The solution is lightweight, reliable, and improves the user experience by preventing accidental data loss.
Read more

This component was developed to reliably and automatically detect changes in forms, ensuring that the user is alerted whenever they attempt to leave a screen with unsaved data. It monitors real user interactions, such as typing, option selection, and changes in the state of form fields, accurately identifying when the original content has been modified.


Upon initialization, the component records the initial state of the form, creating a snapshot of the values present in the fields. From this point, any changes made by the user are tracked through change events and data entry. As soon as a modification is detected, the form is marked as changed, without the need for continuous checks or heavy processing when leaving the page.


When the user attempts to close, refresh, or navigate away from the screen, the component acts as a layer of protection. If there are unsaved changes, the browser automatically displays a standard alert informing that data may be lost. This behavior follows the security restrictions of modern browsers, ensuring full compatibility and preventing blocks or inconsistent behavior. If the form has not been modified, no message is displayed, allowing for smooth navigation without unnecessary interruptions.


The component is designed to function stably in modern web applications, including scenarios with dynamic forms, modals, and reactive pages. Its implementation is lightweight, reusable, and does not interfere with the normal flow of the application. Furthermore, it can be easily integrated with save actions, allowing the modified state to be reset after data persistence.


This approach significantly improves the user experience, reduces the risk of accidental data loss, and follows best practices adopted by professional applications. By using this component, developers ensure greater data security and offer a more reliable and intuitive interface for end users.

Release notes (1.0.0)
License (1.0.0)
Reviews (0)
Team
Other assets in this category