2013-09-05 13 views
9

Ich versuche Trello aus einer Google-Tabelle (Google Docs) zu verwenden, und bin nicht sicher, wie/Verweis auf importieren/verknüpfen die Javascript-Dateien benötigt, um ihre Bibliothek zu verwenden. Meine einzige andere Option ist die direkte Verwendung ihrer REST-API (gut, aber ich würde lieber ihre js-Hilfsklassen verwenden).Import von externem Javascript Google Apps Script

Dies ist, was Trello uns verwenden muss:

<script src="http://code.jquery.com/jquery-1.7.1.min.js"></script> 
<script src="https://api.trello.com/1/client.js?key=substitutewithyourapplicationkey"</script> 

Wie würde ich importieren/umfassen diese in einem Google Apps Script?

DANK !!!

Antwort

0

Sie können keine externen Javascript-Bibliotheken auf diese Weise in Google Apps Script verwenden. (Sie können tun so in HTML-Dateien mit den HtmlService verwendet. Da so viel von Trello ist clientseitige wie auch immer, dies nur sein, was Sie brauchen.)

In serverseitige Apps Script, sollten Sie in der Lage sein, Zugriff auf den Bibliothekscode mit der Technik von this answer. Es heißt nicht, aber ich würde mir vorstellen, dass Sie das eval außerhalb aller Funktionen in Ihrem Skript platzieren würden, um die Objekte in der Bibliothek für den Rest Ihres Codes verfügbar zu machen.

+1

irgendwelche spezifischen Beispiele dafür? Ich war noch nicht erfolgreich von einer Google-Tabelle. – dixkin

0

sie herunterladen und in das Skript setzen. Der Rest api ist einfach zu bedienen. Ich habe Trello Rest von appscript verwendet.

+0

Danke. Ich habe das ausprobiert, aber ich habe die Quelle von der Trello-API-Seite heruntergeladen und beim Ausführen des Skripts Folgendes erhalten (bezogen auf den heruntergeladenen Code): "ReferenceError:" window "ist nicht definiert. (Zeile 3, Datei" TrelloTools ") Entledigen" – dixkin

+0

Google Apps Script ist serverseitig, daher gibt es kein Fensterobjekt. –

-1

Ja können Sie JavasSript Bibliotheken in Google-Skript verwenden. Kopieren Sie den gesamten JavaScript-Inhalt der Bibliotheken und veröffentlichen Sie ihn in einer neuen GS-Datei.

15

Basierend auf der Antwort hier durch Cameron Roberts, können Sie die Funktion eval() auf der appscript UrlFetchApp-Funktion verwenden.

eval(UrlFetchApp.fetch('http://path.to/external/javascript.js').getContentText()); 
+3

Das ist großartig. Ich konnte moment.js wie folgt in meinen Google Apps Script-Code importieren: eval (UrlFetchApp.fetch ('https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.17.1/moment.min. js '). getContentText()); Dann konnte ich einen Kalendereintrag wie folgt hinzufügen: // Fügen Sie die Jahre zum Datum hinzu var result = Moment (Datum) .add (numberOfYears, 'years'). Format ("MMMM DD, YYYY"); var event = CalendarApp.getDefaultCalendar() createAllDayEvent. ('Frist zu für alles', new Date (Ergebnis), { Gäste: '[email protected]', sendInvites: 'true' }); – GuitarViking

3

können Sie tatsächlich. Erstellen Sie im Script-Projekt eine weitere neue Datei und fügen Sie einfach die JavaScript-Bibliothek, die von der Quelle kopiert wird, ein und speichern Sie sie. Beginnen Sie dann, sie aus einer anderen Datei zu referenzieren. So einfach ist das.

Oder Sie können ein anderes Projekt mit der .js-Bibliothek erstellen und es veröffentlichen und dieses Skript aus dem aufrufenden Projekt referenzieren, das mache ich nicht, es sei denn, das muss in mehreren Projekten geteilt werden.

+0

Eine Sache zu beachten, Funktionen in anderen Skripts sind so, als ob Sie sie miteinander verketten. Sie müssen sie nicht importieren oder laden. – styks

Verwandte Themen