ember-mobiledoc-editor icon indicating copy to clipboard operation
ember-mobiledoc-editor copied to clipboard

Updating `mobiledoc` property does not work

Open sdhull opened this issue 6 years ago • 2 comments

The {{mobiledoc-editor}} component does not implement didReceiveAttrs() and so does not properly handle having the mobiledoc change out from under it.

As an aside, I have no idea how to supply a new mobiledoc to an editor instance. Seems like maybe it's not possible...?

sdhull avatar Dec 17 '18 21:12 sdhull

OK after more investigation, I realize it works as long as it's a new mobiledoc hash that the component has never received before.

However, if I send a default mobiledoc to the component (with an empty section, due to autofocus issue), that will cache the document as _upstreamMobiledoc. Then someone uses the editor, causing _localMobiledoc to be set. But when I want to reset the form, I resend that empty mobiledoc and it does nothing (because that default mobiledoc has been cached as _upstreamMobiledoc.

I don't know if the editor component hangs on to two references to mobiledocs for any purpose, but if not, I'd collapse _upstreamMobiledoc and _localMobiledoc into a single _mobiledoc property and that would solve the problem. PR incoming.

sdhull avatar Dec 17 '18 22:12 sdhull

(and turns out using willRender instead of didReceiveAttrs is fine)

sdhull avatar Dec 17 '18 22:12 sdhull