A bit of refactoring
This commit is contained in:
parent
6f1fbac9ac
commit
ba1eb2a837
|
@ -30,18 +30,13 @@ export default class ModeMenu extends Component {
|
|||
}
|
||||
|
||||
handleClick = () => {
|
||||
// we trigger the onChangeMode on the next tick, after the click event
|
||||
// has been finished. This is a workaround for preact not neatly replacing
|
||||
// a rendered app whilst the event is still being handled.
|
||||
setTimeout(() => {
|
||||
try {
|
||||
this.props.onRequestClose()
|
||||
this.props.onChangeMode(mode)
|
||||
}
|
||||
catch (err) {
|
||||
this.props.onError(err)
|
||||
}
|
||||
})
|
||||
try {
|
||||
this.props.onRequestClose()
|
||||
this.props.onChangeMode(mode)
|
||||
}
|
||||
catch (err) {
|
||||
this.props.onError(err)
|
||||
}
|
||||
}
|
||||
|
||||
componentDidMount () {
|
||||
|
|
15
src/index.js
15
src/index.js
|
@ -179,13 +179,18 @@ function jsoneditor (container, options = {}) {
|
|||
}
|
||||
|
||||
function handleChangeMode (mode) {
|
||||
const prevMode = editor._mode
|
||||
// we execute editor.setMode on the next tick, after the click event
|
||||
// has been finished. This is a workaround for preact which does not
|
||||
// neatly replace a rendered app whilst the event is still being handled.
|
||||
setTimeout(() => {
|
||||
const prevMode = editor._mode
|
||||
|
||||
editor.setMode(mode)
|
||||
editor.setMode(mode)
|
||||
|
||||
if (editor._options.onChangeMode) {
|
||||
editor._options.onChangeMode(mode, prevMode)
|
||||
}
|
||||
if (editor._options.onChangeMode) {
|
||||
editor._options.onChangeMode(mode, prevMode)
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
function handleError (err) {
|
||||
|
|
Loading…
Reference in New Issue