Как указать список пользовательских токенов для автоматического заполнения в Ace Editor? - PullRequest
0 голосов
/ 05 декабря 2018

После выполнения настройки автозаполнения с помощью Ace Editor , он работает с act-ace .Однако мне нужно, чтобы некоторые встроенные токены были доступны во встроенном списке автозаполнения.

В хранилище для react-ace эти свойства определены как

enableBasicAutocompletion: PropTypes.oneOfType([PropTypes.bool, PropTypes.array]),
enableLiveAutocompletion: PropTypes.oneOfType([PropTypes.bool, PropTypes.array]),

, но что это такое array?

Я попытался установить enableBasicAutocompletion={ ['custom'] } и enableBasicAutocompletion={ [ (...args) => console.log(args) ] }, но оба не удаются с ошибкой о getCompletions not a function.

Как добавить эти пользовательские ключевые слова автозаполнения в список?

<AceEditor
    name={ this.uniqueName }
    mode="javascript"
    theme="github"
    onChange={ onChange }
    enableBasicAutocompletion
    enableLiveAutocompletion
/>

1 Ответ

0 голосов
/ 06 декабря 2018

используйте массив editor.completers для добавления нового завершителя, который возвращает требуемые дополнения

editor.completers.push({
    getCompletions: function(editor, session, pos, prefix, callback) {
        var completions = [];
        // we can use session and pos here to decide what we are going to show
        ["word1", "word2"].forEach(function(w) {

            completions.push({
                value: w,
                meta: "my completion",

            });
        });
        callback(null, completions);
    }
})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...