Uncaught TypeError - Handlebars.compile is not a function - AEM 6.5

Avatar

Avatar

id-genz

Avatar

id-genz

id-genz

28-06-2019

We are using a custom color picker from Experiencing Adobe Experience Manager - Day CQ: AEM 65 - Touch UI RTE (Rich Text Editor) Dialog Colo... - the color picker works fine, but color-picker.js throws this Uncaught TypeError, and that causes an issue with other plugins which load after it. My understanding is that Handlebars is included OOTB in AEM, based on the docs - SCF Handlebars Helpers (although, the 6.5 version of this documentation appears incorrect - helpers.js has moved to /libs/clientlibs/social/commons/scf/helpers.js in 6.5) which makes me think that the issue is due to helpers.js moving. Is there a step that is missing somewhere that I need to make sure Handlebars is included and accessible by this JS file?

Accepted Solutions (1)

Accepted Solutions (1)

Avatar

Avatar

Arun_Patidar

MVP

Total Posts

3.0K

Likes

1.1K

Correct Reply

861

Avatar

Arun_Patidar

MVP

Total Posts

3.0K

Likes

1.1K

Correct Reply

861
Arun_Patidar
MVP

28-06-2019

The error is because the plugin is loading twice with page and in a popover dialog, and in the popover dialog the Handlebar js is not being loaded that causing the issue, in case if you are using custom plugins then add below condition in plugin js to load plugins only once.

if (document.location.pathname.indexOf("/editor.html/") > -1)

        addDialogTemplate();

I've updated the color picker and created new custom style plugin and both are working fine in 6.3,6.4 and 6.5

Answers (4)

Answers (4)

Avatar

Avatar

narayana_chirra

Avatar

narayana_chirra

narayana_chirra

19-01-2021

if (document.location.pathname.indexOf("/editor.html/") > -1) {

        addDialogTemplate();

}

 

yes, it is working for us, we are having a similar issue with RTE Image Picker Plugin.

Avatar

Avatar

antoniom5495929

Avatar

antoniom5495929

antoniom5495929

28-06-2019

Hi,

the handlebars library is deployed by default if you include the cq.authoring.dialog clientlib into your project (as you can see from the image).

Screen Shot 2019-06-28 at 18.35.01.png

Thanks,

Antonio

Avatar

Avatar

Arun_Patidar

MVP

Total Posts

3.0K

Likes

1.1K

Correct Reply

861

Avatar

Arun_Patidar

MVP

Total Posts

3.0K

Likes

1.1K

Correct Reply

861
Arun_Patidar
MVP

23-08-2019

I updated color picker plugin, works with AEM 6.3+

you can get it from below:

AEM - Touch UI - RTE HTML Element Selector, Custom Style Plugin & Color Picker Plugin

Avatar

Avatar

shivamurthym775

Avatar

shivamurthym775

shivamurthym775

23-08-2019

Hi Arun,

I was not able to fix the same issue by adding the

if (document.location.pathname.indexOf("/editor.html/") > -1)

        addDialogTemplate();

Do we need to do something else?@