josdejong/jsoneditor

Reevaluate "onEditable"

Open

#1,386 opened on Nov 8, 2021

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

Repository metrics

Stars
 (12,263 stars)
PR merge metrics
 (Avg merge 15h 36m) (3 merged PRs in 30d)

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