Все события являются необязательными. Однако некоторые возможности (например, добавление кнопок инструмента) зависят от конкретных событий.
Каждое событие имеет обратный вызов функции, которая будет вызвана при активации события.
Вызывается перед началом инициализации плагина. В этом событии можно настроить свойства плагина. Это событие будет вызываться только один раз. Обратите внимание, что DOM плагина ещё не готов.
myPlugin.on('init', function() {
// выполнение каких-либо действий для инициализации плагина
this.list = []; // `this` == `myPlugin`
});
Вызывается во время попытки vConsole создать новую вкладку для плагина. Это событие будет вызываться только один раз. После привязки этого события, vConsole получит HTML из вашего обратного вызова для отображения вкладки. Новая вкладка обязательно будет добавлена, если вы привяжете это событие, независимо от того, какой HTML вкладки вы установите. Не привязывайте это событие, если вам не требуется добавление новой вкладки.
html
может быть строкой HTML или объектом HTMLElement (или объектом, поддерживающим метод appendTo()
, таким как объект jQuery), а также необязательным объектом с опциями вкладки.Опции вкладки — это объект с следующими свойствами:Свойство | Тип | Обязательность | Описание |
---|---|---|---|
fixedHeight | boolean | Необязательно | Указывает, является ли высота вкладки фиксированной (true). |
myPlugin.on('renderTab', function(callback) {
var html = '<div>Привет</div>';
callback(html);
});
Вызывается во время попытки vConsole добавить новые кнопки вкладок под панелью вкладок. Это событие будет вызываться только один раз.
Кнопка вкладки — это объект с следующими свойствами:
Свойство | Тип | Обязательность | Описание |
---|---|---|---|
name | string | Обязательно | Отображаемое имя кнопки. |
data | object | Необязательно | Личные данные кнопки, ключ-значение. |
className | string | Необязательно | Класс кнопки. |
active | boolean | Необязательно | Активный стиль кнопки. |
onClick | (event, data) => boolean | Обязательно | Обратный вызов функции при клике пользователя на кнопку. Целевая кнопка автоматически получит активный стиль после этого обратного вызова, если он не вернет false . |
var type;
myPlugin.on('addTopBar', function(callback) {
var btnList = [];
btnList.push({
name: 'Apple',
className: '',
data: {type: 'apple'},
onClick: function(event, data) {
if (type !== data.type) {
// `this` указывает на текущую кнопку
type = data.type;
} else {
return false;
}
}
});
btnList.push({
name: 'Orange',
className: '',
data: {type: 'orange'},
onClick: function(event, data) {
type = data.type;
}
});
callback(btnList);
});
```## addTool
Срабатывает при попытке vConsole добавить новые кнопки инструмента для плагина. Это событие будет срабатывать только один раз.
##### Аргументы обратного вызова:
- (обязательный) function(toolList): обратный вызов, который получает массив объектов кнопок инструмента.
Объект кнопки инструмента имеет следующие свойства:
Свойство | Тип | Обязательность | Описание
-------- | -------- | -------- | --------
name | string | обязательный | Отображаемое имя кнопки.
data | object | необязательный | Личные данные кнопки в формате ключ-значение.
global | boolean | необязательный, значение по умолчанию `false` | Когда `false`, кнопка скрывается при переходе на другой вкладок. Когда `true`, кнопка доступна во всех вкладках.
onClick | (event, data) => void | обязательный | Обратный вызов при нажатии пользователя на кнопку.
##### Пример:
```javascript
myPlugin.on('addTool', function(callback) {
var toolList = [];
toolList.push({
name: 'Перезагрузка',
global: false,
data: {},
onClick: function(event, data) {
location.reload();
}
});
callback(toolList);
});
Срабатывает после завершения всех процессов инициализации. Это событие будет срабатывать только один раз. Теперь плагин установлен и его DOM готов к использованию.
myPlugin.on('готово', function() {
// сделать что-то...
});
Срабатывает перед началом процесса деинсталляции плагина. Это событие будет срабатывать только один раз.Примечание: Это событие может быть вызвано до события init
, если вы удалите плагин до того, как vConsole будет готов.
myPlugin.on('delete', function() {
// сделать что-то...
});
Срабатывает при открытии вкладки. Только плагины, привязанные к renderTab
, будут получать это событие.
myPlugin.on('show', function() {
// выполните какое-либо действие
});
Вызывается, когда вкладка скрывается. Только плагин, привязанный с помощью renderTab
, получает это событие.
myPlugin.on('hide', function() {
// выполните какое-либо действие
});
Вызывается, когда vConsole становится видимой.
myPlugin.on('showConsole', function() {
// выполните какое-либо действие
});
Вызывается, когда vConsole скрывается.
myPlugin.on('hideConsole', function() {
// выполните какое-либо действие
});
Вызывается при вызове vConsole.setOption()
.
myPlugin.on('updateOption', function() {
// выполните какое-либо действие
});
```[Назад к содержанию](./a_doc_index.md)
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )