mirror of
https://github.com/Tencent/tmagic-editor.git
synced 2025-12-14 11:06:57 +08:00
4.8 KiB
4.8 KiB
eventsService方法
init
-
参数:
- {Record<string, { events: EventOption[]; methods: EventOption[] }>} eventMethodList 事件方法列表配置
-
返回:
{void}
-
详情:
初始化事件服务,设置所有组件的事件和方法列表
:::tip 该方法通常由编辑器内部调用,开发者可以通过 m-editor 的 eventMethodList prop 来配置 :::
-
示例:
import { eventsService } from '@tmagic/editor';
eventsService.init({
page: {
events: [
{ label: '页面加载', value: 'load' },
{ label: '页面卸载', value: 'unload' },
],
methods: [
{ label: '刷新', value: 'refresh' },
{ label: '返回', value: 'back' },
],
},
button: {
events: [
{ label: '点击', value: 'click' },
],
methods: [],
},
});
setEvents
-
参数:
- {Record<string, EventOption[]>} events 事件配置对象
-
返回:
{void}
-
详情:
批量设置多个组件类型的事件列表
-
示例:
import { eventsService } from '@tmagic/editor';
eventsService.setEvents({
page: [
{ label: '页面加载', value: 'load' },
{ label: '页面显示', value: 'show' },
],
text: [
{ label: '点击', value: 'click' },
],
});
setEvent
-
参数:
{string}type 组件类型- {EventOption[]} events 事件列表
-
返回:
{void}
-
详情:
设置指定组件类型的事件列表
-
示例:
import { eventsService } from '@tmagic/editor';
eventsService.setEvent('button', [
{ label: '点击', value: 'click' },
{ label: '长按', value: 'longpress' },
]);
getEvent
-
参数:
{string}type 组件类型
-
返回:
- {EventOption[]} 事件列表
-
详情:
获取指定组件类型的事件列表
-
示例:
import { eventsService } from '@tmagic/editor';
const events = eventsService.getEvent('button');
console.log(events); // [{ label: '点击', value: 'click' }, ...]
setMethods
-
参数:
- {Record<string, EventOption[]>} methods 方法配置对象
-
返回:
{void}
-
详情:
批量设置多个组件类型的方法列表
-
示例:
import { eventsService } from '@tmagic/editor';
eventsService.setMethods({
page: [
{ label: '刷新', value: 'refresh' },
{ label: '滚动到顶部', value: 'scrollToTop' },
],
video: [
{ label: '播放', value: 'play' },
{ label: '暂停', value: 'pause' },
],
});
setMethod
-
参数:
{string}type 组件类型- {EventOption[]} methods 方法列表
-
返回:
{void}
-
详情:
设置指定组件类型的方法列表
-
示例:
import { eventsService } from '@tmagic/editor';
eventsService.setMethod('video', [
{ label: '播放', value: 'play' },
{ label: '暂停', value: 'pause' },
{ label: '停止', value: 'stop' },
]);
getMethod
-
参数:
{string}type 组件类型
-
返回:
- {EventOption[]} 方法列表
-
详情:
获取指定组件类型的方法列表
-
示例:
import { eventsService } from '@tmagic/editor';
const methods = eventsService.getMethod('video');
console.log(methods); // [{ label: '播放', value: 'play' }, ...]
resetState
-
参数: 无
-
返回:
{void}
-
详情:
重置事件服务状态,清空所有事件和方法配置
-
示例:
import { eventsService } from '@tmagic/editor';
eventsService.resetState();
destroy
-
参数: 无
-
返回:
{void}
-
详情:
销毁 eventsService,重置状态并移除所有事件监听和插件
-
示例:
import { eventsService } from '@tmagic/editor';
eventsService.destroy();