ace编辑器更改事件和setvalue

问题描述 投票:1回答:1

我正在听ACE编辑器的更改事件来处理用户的输入,而有时我会用js做setvalue()

那么有没有办法避免setvalue()触发变化事件?

javascript events ace-editor
1个回答
4
投票

没有办法避免改变事件。但由于更改事件是同步触发的,因此您可以设置一个标志以不处理由您创建的事件。就像是

var fromSetValue = false;
editor.on("change", function() {
    if (!fromSetValue) {
        // user input
    }
})

fromSetValue = true;
editor.setValue("hi")
fromSetValue = false;
© www.soinside.com 2019 - 2024. All rights reserved.