Files
Xbot-Wps/js/xbot.js
T
2024-11-05 21:23:22 +08:00

37 lines
1.1 KiB
JavaScript

function InvokeFromXbot(param) {
let jsonObj = (typeof (param) == 'string' ? JSON.parse(param) : param)
let func = jsonObj.Func;
let args = jsonObj.Args;
args = JSON.parse(args);
console.log(func);
console.log(args);
switch (func) {
case "getDocumentName": {
const doc = wps.WpsApplication().ActiveDocument;
alert(doc.Name);
if (!doc) {
return { currentDoc: null }
}
return { currentDoc: doc.Name }
}
case "evalCode": {
// 1. 注入 WPS 对象
// 2. 执行函数, 获取返回值
let code = args?.code;
console.log("start eval code");
console.log(code);
// var result = eval(code);
// const tmpCode = `return ${code}`; // 为了获取返回值,需要在代码前面加上 return
const result = new Function(code)(); // 执行并获取返回值
console.log(result);
console.log("success eval code");
return { message: "ok", data: result }
}
}
return { message: "ok" }
}