2

Hi guys when enabling locker service I get this error, I am using the tinyMCE plugin?

auraError": -{ "name": "TypeError", "message": "Uncaught Action failed: c$EmailEditor$controller$afterScriptsLoaded [Cannot read property 'open' of undefined]\nthrows at https://totaljobsgroup--xforce1.lightning.force.com/auraFW/javascript/vR3RI4HaFe6ZgUzebBGZ9A/aura_proddebug.js:17535:7", "$stackTrace$": " at B.initContentBody (/resource/1477776332000/TinyMCE/tinymce/tinymce.min.js:12:19706)\n at B.init (/resource/1477776332000/TinyMCE/tinymce/tinymce.min.js:12:19505)\n at n. (/resource/1477776332000/TinyMCE/tinymce/tinymce.min.js:12:14550)\n at Array. (/resource/1477776332000/TinyMCE/tinymce/tinymce.min.js:5:11083)\n at n (/resource/1477776332000/TinyMCE/tinymce/tinymce.min.js:4:1351)\n at p (/resource/1477776332000/TinyMCE/tinymce/tinymce.min.js:5:11060)\n at n.loadScripts (/resource/1477776332000/TinyMCE/tinymce/tinymce.min.js:5:11112)\n at n.loadQueue (/resource/1477776332000/TinyMCE/tinymce/tinymce.min.js:5:10759)\n at t (/resource/1477776332000/TinyMCE/tinymce/tinymce.min.js:12:14516)\n at B.render (/resource/1477776332000/TinyMCE/tinymce/tinymce.min.js:12:15817)", "severity": "ALERT", "$component$": "c$EmailEditor$controller$afterScriptsLoaded", "action": null, "id": "52326a7a-c4c1-4a24-91fa-d4264c9fb217", "stackTrace": " at B.initContentBody (/resource/1477776332000/TinyMCE/tinymce/tinymce.min.js:12:19706)\n at B.init (/resource/1477776332000/TinyMCE/tinymce/tinymce.min.js:12:19505)\n at n. (/resource/1477776332000/TinyMCE/tinymce/tinymce.min.js:12:14550)\n at Array. (/resource/1477776332000/TinyMCE/tinymce/tinymce.min.js:5:11083)\n at n (/resource/1477776332000/TinyMCE/tinymce/tinymce.min.js:4:1351)\n at p (/resource/1477776332000/TinyMCE/tinymce/tinymce.min.js:5:11060)\n at n.loadScripts (/resource/1477776332000/TinyMCE/tinymce/tinymce.min.js:5:11112)\n at n.loadQueue (/resource/1477776332000/TinyMCE/tinymce/tinymce.min.js:5:10759)\n at t (/resource/1477776332000/TinyMCE/tinymce/tinymce.min.js:12:14516)\n at B.render (/resource/1477776332000/TinyMCE/tinymce/tinymce.min.js:12:15817)", "handled": true, "reported": true, "data": null

3

I believe that TinyMCE like CKEditor is neither strict mode nor CSP unsafe inline/eval compliant. Salesforce itself is itself switching to Quil - a modern rich text editor that is strict mode and CSP compliant. The next major version of CKEditor (5.x) is also strict mode and CSP compliant but it's in an alpha state last I looked.

Is there a reason you cannot use the built in rich text components?

  • ... what is the object with the .open() method expected to be instead of null? Is it a reference to "this" in a an unbound function call (evaluates to undefined in strict mode)? – Doug Chasman Oct 29 '16 at 22:41
0

Sorry I have use case to make a custom email html editor, this is primary used when reps want to select an html template but want to edit the template before sending.

Also the ability to copy and paste images, I have a proof of concept done using visualforce using tinymce, which works really well even when pasting images it will host them in sfdc.

Not sure about the error need to dig up the src file for tinyMce

  • I am actually taliknig about an issue you have not even hit yet that is a "laws of physics" deal breaker github.com/tinymce/tinymce/issues/1901 . I would recommend either using ui:inputRichText or quilljs.com – Doug Chasman Oct 30 '16 at 11:06
  • 1
    You can of course use the Visualforce page in an iframe inside a lightning component that you interact with via window.postMessage/onmessage as a viable option. – Doug Chasman Oct 30 '16 at 11:46
  • Hi I am trying the suggestion i.e. using vf page, which has tinymce. But when i try to post message with locker service enabled it does not work? onDoneRendering :function() { var editor = document.getElementById("editor").contentWindow; editor.postMessage({status: "hello world"}, "*"); console.log(editor); } – lodoss118 Nov 2 '16 at 20:49

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.