legacy-knowledge-base
公開されました Jun. 30, 2025

After an upgrade, some fragments get broken because JS strict mode seems to be enforced now

投稿者

Jose L. Bango

knowledge-article-header-disclaimer-how-to

knowledge-article-header-disclaimer

legacy-article

learn-legacy-article-disclaimer-text

Issue

  • We do not declare JS variables when developing fragments. After an upgrade, these fragments stop working properly.

Environment

  • Upgrades to the following Patch Releases: 2023.Q3.5+, 2023.Q4.1+
  • Upgrades to 2024.Q1 or newer Quarterly Release

Resolution

  • This is a consequence of using JavaScript modules in fragment scripts. Modules automatically enforce strict mode, preventing undeclared variables from being used.
    • This behavior was introduced by LPS-202182.
    • The previous code was relying on global variables creation which is a bad practice.
  • The solution in this case would be to modify the code to declare all variables.
  • However, a temporary workaround has been developed to give more time for this adoption:
    • A new setting (true by default) is available in Instance Settings > Page Fragments > Javascript > Javascript Module Enabled.
    • Unchecking that setting will make those fragments work again.
    • As mentioned before, be aware that this setting will be removed in future versions. Users will no longer have the option to disable type="module".
    • If you cannot see that setting, you may want to ask for a hotfix including LPD-33141.

Additional Information

 

 

did-this-article-resolve-your-issue

legacy-knowledge-base