You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
In my project we have a huge i18n file (~2000 lines) for all the application and we came across big performance loss specially on mobile devices and Internet Explorer.
After some profiling of our app with the chome dev tools we found that the most consuming function of all our project is the looseClone function in your library.
I think maybe cloning the entire message list every time a translation is done is not the right thing to do as VueJS will refresh the translation every time the scope of the component has changed (If you type into an input, all the translations of the component linked to that input will be re-translated again).
For all I see, this looseClone is just a security that ensures that the users of the library will not break it by changing the messages on the fly. Couldn't it be enough to call looseClone in the setter of "prototypeAccessors.locale" ?
Regards,
David
The text was updated successfully, but these errors were encountered:
________________________________
From: ahoo <[email protected]>
Sent: Thursday, October 24, 2019 8:11:37 PM
To: kazupon/vue-i18n <[email protected]>
Cc: razyon <[email protected]>; Author <[email protected]>
Subject: Re: [kazupon/vue-i18n] Performance issues with big i18n files (#165)
this issue still exists?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub<#165?email_source=notifications&email_token=AA4I6XSBZKP36GCQIQS5N6DQQHQNTA5CNFSM4DMTFUWKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOECF6AXQ#issuecomment-546037854>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/AA4I6XXA4AUO6RUXFNTABRLQQHQNTANCNFSM4DMTFUWA>.
Hi,
In my project we have a huge i18n file (~2000 lines) for all the application and we came across big performance loss specially on mobile devices and Internet Explorer.
After some profiling of our app with the chome dev tools we found that the most consuming function of all our project is the looseClone function in your library.
I think maybe cloning the entire message list every time a translation is done is not the right thing to do as VueJS will refresh the translation every time the scope of the component has changed (If you type into an input, all the translations of the component linked to that input will be re-translated again).
For all I see, this looseClone is just a security that ensures that the users of the library will not break it by changing the messages on the fly. Couldn't it be enough to call looseClone in the setter of "prototypeAccessors.locale" ?
Regards,
David
The text was updated successfully, but these errors were encountered: