[OutSystems UI] Null Object In Tabs After Updating To the Newest Version
outsystems-ui
Forge component by Platform Maintenace
Application Type
Mobile

Hi,

After updating our OutsystemsUI to the newest version, we started getting the following error in all our mobile apps.


null is not an object (evaluating 'obj.querySelector(".tabs-header-tab.active").offsetWidth')


It only shows up when you visit the page with the tab multiple times, sometimes from the first visit and sometimes many.


We are using MABS 7.0 if that is needed to know.


Thanks.

Hello Fawaz,
Can you please provide more details about how to replicate that issue?
The version you refer to is 2.6.9 correct?
Does that happen also without doing the native build (in the browser)?

Thanks you. 

Yes we upgraded to version 2.6.9 and that is when the error started to show up. We tried to remove the Layout class from the Layout block and it solved the issue. But we do not want to go on with this solution since it is now creating a new error "null is not an object (evaluating 'layout.classList')" when we open the side menu of the app (MenuShow and MenuHide) client actions. The error itself isn't affecting anything of the page functionality but still.... it's an error.


The root issue is basically a conflict between the layout class and the updated Tabs UI element in mobiles only. The issue does not happen in reactive apps.

Hi Fawaz.
Can you share a module with the use case reproduced so that we can analyze it properly?
We would also like to know what was your previous OutSystems UI version before the upgrade.
Thanks in advance!


Hello Fawaz Naouchi.
Any update in this topic?
We were not able to replicate so we would really appreciate a module with the steps to reproduce in order to fiz that issue and improve our product.

Best Regards,
GM

We've a similar problem, only in iOS:

[Error] TypeError: null is not an object (evaluating 'e.getUTCFullYear').


OutSystemsUI v2.7.0.

Hello, Maycon! 

Is it possible for you to share a simple OML reproducing the error, please?

Thanks in advance :)

Hello Joana.

Is not necessary anymore.


We was discovered that "new date(<string date param>)" javascript has a different behavior between Android and iPhone.

We just remove "new Date" (let <string date param>") and solved it here.


Problem/error in iOS, but OK in Android:

document.getElementById($parameters.calendarId).children[0].ReactiveFullcalendar.gotoDate(new Date($parameters.NewDate));


Solution (works fine in all this scenarios):

document.getElementById($parameters.calendarId).children[0].ReactiveFullcalendar.gotoDate($parameters.NewDate);


Regards.

Community GuidelinesBe kind and respectful, give credit to the original source of content, and search for duplicates before posting.