我正在尝试测试我制作的 Google Docs 的简单插件,但似乎 此文档页面 与旧版 Apps 脚本编辑器相关,而且我无法找到如何使用新版Apps 脚本编辑器。
我的代码,如果有帮助的话
const PASS = "PASSPHRASE";
function decrypt(text) {
var cipher = new cCryptoGS.Cipher(PASS, 'aes');
return cipher.decrypt(text)
}
function encrypt(text) {
var cipher = new cCryptoGS.Cipher(PASS, 'aes');
return cipher.encrypt(text)
}
function decryptDocument() {
var doc = DocumentApp.getActiveDocument();
var paragraphs = doc.getBody().getParagraphs();
return paragraphs.reduce((previous, current) => {
return previous + "\n" + decrypt(current.getText());
}, "");
}
function onOpen() {
DocumentApp.getUi()
.createMenu('Décodeur')
.addItem('Lancer le décodeur', 'showSidebar')
.addToUi();
}
function showSidebar() {
var html = HtmlService.createHtmlOutputFromFile('decoder')
.setTitle('Décodeur');
DocumentApp.getUi().showSidebar(html);
}
<!DOCTYPE html>
<html>
<head>
<base target="_top">
</head>
<body>
<button onclick="decrypt()">Décoder le contenu</button>
<div id="decodedText">
</div>
</body>
<script>
var running = false;
function onSuccess(decodedText) {
running = false;
document.getElementById("decodedText").innerHTML = decodedText;
}
function onFailure(e) {
running = false;
console.error(e);
}
function cleanDiv() {
document.getElementById("decodedText").innerHTML = "";
}
function decrypt() {
running = true;
google.script.run.withSuccessHandler(onSuccess)
.withFailureHandler(onFailure)
.decryptDocument();
}
</script>
</html>
{
"timeZone": "America/New_York",
"dependencies": {
"libraries": [
{
"userSymbol": "cCryptoGS",
"version": "4",
"libraryId": "1IEkpeS8hsMSVLRdCMprij996zG6ek9UvGwcCJao_hlDMlgbWWvJpONrs"
}
]
},
"exceptionLogging": "STACKDRIVER",
"runtimeVersion": "V8"
}
彻底测试编辑器插件的唯一方法是使用 Google Workspace SDK 进行发布。
当OP创建这个问题时,开发人员必须使用旧版编辑器来使用Google Apps脚本的“测试作为附加组件”功能。测试像onOpen简单触发器之类的功能可能没问题,但不能测试可安装触发器之类的其他功能。如今,旧编辑器已不再可用,但测试作为附加功能可在新编辑器中使用。尽管如此,还是有一些功能无法使用此功能进行测试。
显然,您的编辑器附加组件不使用可安装的触发器和其他无法通过“作为附加组件测试”进行测试的功能。但是,它很可能足以测试您的附加组件的简单触发器。
此外,您的附加组件缺少
onInstall
简单触发器,当从打开的文档安装附加组件时,该触发器通常会调用 onOpen
触发器。
相关