Выполнить код после инициализации экземпляра AceEditor - PullRequest
0 голосов
/ 28 октября 2019

Как я могу запустить функцию javascript после инициализации экземпляра AceEditor? Если бы у меня было два входа, которые я превращал в AceEditor на одной странице, функция запускалась бы дважды, по одному разу для каждого редактора.

Если возможно, я бы хотел установить его один раз (своего рода поведение по умолчанию).

1 Ответ

1 голос
/ 31 октября 2019

Это зависит от того, что именно вы подразумеваете под "инициализированным".

После вызова editor = ace.edit(domNode) экземпляр ace готов к использованию, если вы хотите знать, когда редактор в первый раз что-то отображает, выможно использовать

editor.renderer.once("afterRender", console.log)

или заставить его выполнять рендеринг синхронно с

editor.resize(true)

Если вы не включаете режим по умолчанию на странице и хотите знать, когда этот режим загружен, вы можете использовать

editor.session.once("changeMode", console.log)

Если вы ищете что-то еще, обновите вопрос с дополнительной информацией.

...