josdejong/jsoneditor

Reevaluate "onEditable"

Open

#1,386 opened on Nov 8, 2021

 (4 comments) (0 reactions) (0 assignees)JavaScript (2,078 forks)batch import
featurehelp wanted

Repository metrics

Stars
 (12,263 stars)
PR merge metrics
 (PR metrics pending)

Description

I want to use the "code" or "tree" modes for viewing JSON in readonly mode. However, I want to be able to switch the editor into read/write mode dynamically. At the moment "onEditable" is not reevaluated - can I force JSONEditor to reevaluate whether the JSON can be edited? The only method I've found is to switch mode and then back again - but this comes with its own problems (like cursor location changing, tree collapsing).

        const options = {
            mode: 'code',
            modes: ['code', 'form', 'text', 'tree', 'view', 'preview'],
            onEditable: function () {
                return self.editJSON; <-- this can change dynamically.
            }
        };
        this.jsoneditor = new JSONEditor(container, options);

Perhaps something like?:

this.jsoneditor.reevaluateOnEditable();

Thanks, -Neil

Contributor guide