事件处理效果预览
“事件”是指用户在客户端查看智能短信时,通过与子组件交互可完成的客户端操作。比如手机用户点击短信中的“进入官网”按钮,即可访问官网。
如您需要在预览模板时查询模板绑定的事件处理效果,这一需求可通过调用PreviewService函数统一处理事件来实现。目前item元素支持表1中列举的12种事件类型,您可根据实际情况给组件赋予事件类型。
目前PreviewService函数仅可处理OPEN_APP(仅支持移动端,在非移动端操作会有弹窗提示)、OPEN_BROWSER、OPEN_URL事件,VIEW_PIC事件需在app-preview-image中单独处理。
模板预览事件类型
| 事件类型 | ActionTypes枚举值 |
|---|---|
| 查看大图 | VIEW_PIC = 'VIEW_PIC' |
| 打开URL | OPEN_URL = 'OPEN_URL' |
| 打开浏览器 | OPEN_BROWSER = 'OPEN_BROWSER' |
| 复制参数 | COPY_PARAMETER = 'COPY_PARAMETER' |
| 打开APP | OPEN_APP = 'OPEN_APP' |
| 打开地图 | OPEN_MAP = 'OPEN_MAP' |
| 拨打电话 | DIAL_PHONE = 'DIAL_PHONE' |
| 打开快应用 | OPEN_QUICK = 'OPEN_QUICK' |
| 打开短信 | OPEN_SMS = 'OPEN_SMS' |
| 打开日程表 | OPEN_SCHEDULE = 'OPEN_SCHEDULE' |
| 打开邮箱 | OPEN_EMAIL = 'OPEN_EMAIL' |
| 打开弹窗 | OPEN_POPUP = 'OPEN_POPUP' |
PreviewService函数调用示例
import { ActionTypes };
export PreviewService {
emit($event) {
const { action, target } = $event;
switch (action) {
case ActionTypes.OPEN_APP:
if (target) {
this.alert (`你要打开的app地址为${target},请在移动端进行此操作`);
}
break;
case ActionTypes.OPEN_BROWSER:
case ActionTypes.OPEN_URL:
location.href = target;
break;
default:
break;
}
}
}