Quiero evitar que ModalDialog formatee mis cadenas
Tengo varios fragmentos de texto que se parecen a
const p = "\"_id\": " + "\"\"" + ",\n " + "\"name\": " + "zzInheritanceBaseElements" + ",\n " + "\"style\": " + "@settings {\n include: person, loop;\n}\n\n/* Persons */\nelement[\"element type\"=\"person\"] {\n icon: user;\n icon-color: #c29999;\n padding: 0;\n color: #D57C2D;\n}\n\nelement[\"element type\"=\"Person\"] {\n icon: user;\n icon-color: #c29999;\n}\n\nelement:focus {\n shadow-size: 1.9;\n shadow-color: #e1eab6;\n shadow-opacity: 1;\n}\n\nelement[image] {\n icon: false;\n size: 130;\n}\n\nelement[!image] {\n size: 130;\n}\n\n" + "},"Cuando los abro en el Modal obtengo
"_id": "", "name": zzInheritanceBaseElements, "style": @settings { include: person, loop; } /* Persons */ element["element type"="person"] { icon: user; icon-color: #c29999; padding: 0; color: #D57C2D; } element["element type"="Person"] { icon: user; icon-color: #c29999; } element:focus { shadow-size: 1.9; shadow-color: #e1eab6; shadow-opacity: 1; } element[image] { icon: false; size: 130; } element[!image] { size: 130; } },Estoy tratando de crear una cadena concatenando varias cadenas juntas y luego descargándolas de ModalDailog con
<script> const formatYmd = date => date.toISOString().slice(0, 10); formatYmd(new Date()); const filename = "Kumu" + "_" + formatYmd(new Date()) + ".json"; // If you want to change the filename, please modify this. const a = document.createElement("a"); document.body.appendChild(a); a.download = filename; a.href = <?= temp ?>; a.click(); google.script.host.close(); </script> Necesito que la cadena resultante esté en el original format
Cómo evitar que ModalDialog formatee mis cadenas
Gracias
Creo que su objetivo es el siguiente.
Desea descargar su variable de p como un archivo de texto usando Google Apps Script y diálogo.
Desea mantener el texto de la variable de la siguiente manera.
"\"_id\": \"\",\n \"name\": zzInheritanceBaseElements,\n \"style\": @settings {\n include: person, loop;\n}\n\n/* Persons */\nelement[\"element type\"=\"person\"] {\n icon: user;\n icon-color: #c29999;\n padding: 0;\n color: #D57C2D;\n}\n\nelement[\"element type\"=\"Person\"] {\n icon: user;\n icon-color: #c29999;\n}\n\nelement:focus {\n shadow-size: 1.9;\n shadow-color: #e1eab6;\n shadow-opacity: 1;\n}\n\nelement[image] {\n icon: false;\n size: 130;\n}\n\nelement[!image] {\n size: 130;\n}\n\n},"En este caso, ¿qué tal el siguiente script de muestra?
function openDialog() { const p = "\"_id\": " + "\"\"" + ",\n " + "\"name\": " + "zzInheritanceBaseElements" + ",\n " + "\"style\": " + "@settings {\n include: person, loop;\n}\n\n/* Persons */\nelement[\"element type\"=\"person\"] {\n icon: user;\n icon-color: #c29999;\n padding: 0;\n color: #D57C2D;\n}\n\nelement[\"element type\"=\"Person\"] {\n icon: user;\n icon-color: #c29999;\n}\n\nelement:focus {\n shadow-size: 1.9;\n shadow-color: #e1eab6;\n shadow-opacity: 1;\n}\n\nelement[image] {\n icon: false;\n size: 130;\n}\n\nelement[!image] {\n size: 130;\n}\n\n" + "},"; var template = HtmlService.createTemplateFromFile('index'); // Please modify this to your HTML filename. template.temp = `data:${MimeType.TEXT_PLAIN};base64,${Utilities.base64Encode(JSON.stringify(p))}`; SpreadsheetApp.getUi().showModalDialog(template.evaluate(), 'sample'); }