Dari pelayan ke GAS: laluan pemindahan data
P粉141911244
P粉141911244 2023-09-18 23:38:40
0
2
458

Saya mempunyai fungsi untuk aplikasi web yang menyalin templat, ia menerima nama templat dan id templat sebagai parameter.

code.gs

Fungsi menjana_(idTemplate, nama) {

var template = DriveApp.getFileById(idTemplate); var folder = '文件夹id'; var copyName = name + "-" + CurrentDate;// 添加创建日期 var copy; try { copy = template.makeCopy(copyName, folder); } catch (e) { Logger.log(e.stack); } var nameF = copy.getName(); var linkF = copy.getUrl() Logger.log(nameF,linkF) return getFile(nameF,linkF) // 这些值是我想要传递给客户端的。 }

Fungsi ini adalah apa yang saya gunakan untuk menghantar nama dan URL yang disalin kepada pelanggan. Saya tahu bahawa dalam JavaScript, untuk mengembalikan berbilang parameter, ia mesti dilaksanakan melalui tatasusunan.

function getFile(nameF,linkF){ var array = [nameF,linkF]; return array; }

Ini ialah skrip klien yang saya gunakan untuk cuba mendapatkan semula data replika yang dijana:

HTML

Saya menggunakan butang untuk menguji sama ada ia dihantar dengan betul, tetapi saya tidak dapat memaparkan data, konsol penyemak imbas menunjukkan batal apabila menunjukkan log.

Apa yang boleh saya lakukan salah? Di pihak pelanggan saya telah mencubagoogle.script.run.withSuccessHandler(copyValues).getFile(nameF,linkF);tetapi tidak berjaya.

P粉141911244
P粉141911244

membalas semua (2)
P粉147045274

Cuba ini:

GS:

function launchmydialog() { let t = HtmlService.createTemplateFromFile("ah2"); t.t1 = "one"; t.t2 = "two"; SpreadsheetApp.getUi().showModelessDialog(t.evaluate(),"Dialog"); }

HTML:

    


Dialog:

    P粉951914381

    Ini adalah contoh mendapatkan maklumat fail.

    Seperti yang ditunjukkan dalam tangkapan skrin di bawah, apabila saya mengklik butang, nama fail dan URL akan dipaparkan dalam kotak input.

    Kod.gs

    function showTest() { setFileInfo(); let html = HtmlService.createHtmlOutputFromFile("HTML_Test"); SpreadsheetApp.getUi().showModalDialog(html,"Test"); } function setFileInfo() { let id = "1xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxE"; let name = "Copy of Template"; let template = DriveApp.getFileById(id); let copy = template.makeCopy(name); let properties = PropertiesService.getDocumentProperties(); let property = [copy.getName(),copy.getUrl()]; properties.setProperty("FileInfo",JSON.stringify(property)); } function getFileInfo() { let properties = PropertiesService.getDocumentProperties(); let property = properties.getProperty("FileInfo"); if( property ) { return JSON.parse(property); } return "Error"; }

    HTML_Test.html

       
    

      Muat turun terkini
      Lagi>
      kesan web
      Kod sumber laman web
      Bahan laman web
      Templat hujung hadapan
      Tentang kita Penafian Sitemap
      Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!