代码如下:
let url = `${process.env.VUE_APP_BASE_API}/report/rotbotReport/exportRobotStatReport?timeSlot=${timeSlot}&robotId=${robotId}`;
var $a = document.createElement('a');
$a.setAttribute("href", url);
$a.setAttribute("download", "");
//创建一个事件
var evObj = document.createEvent('MouseEvents');
evObj.initMouseEvent( 'click', true, true, window, 0, 0, 0, 0, 0, false, false, true, false, 0, null);
$a.dispatchEvent(evObj);
上面的导出是get请求。参数直接拼接在url后面。
createEvent 创建一个指定类型的事件。其返回的对象必须初始化并且可以被传递给element.dispatchEvent。
语法:
var event = document.createEvent(type);
- event 就是被创建的Event对象
- type是一个字符串,表示要创建的事件类型,事件类型可能包括:“UIEvents”,“MouseEvents”,“MutationEvents"或者"HTMLEvents”
initMouseEvent
语法:
event.initMouseEvent(type, canBubble, cancelable, view,detail, screenX, screenY, clientX, clientY,ctrlKey, altKey, shiftKey, metaKey,button, relatedTarget);
dispatchEvent 向一个指定的事件目标派发事件。