37 lines
1.1 KiB
JavaScript
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" }
|
|
}
|