Ich habe eine ziemlich einfache App-Struktur, die diese Bibliotheken enthält
server
- enthält eine Konfiguration für Routing und ENV
client
- enthält Vorlagen ( <template name=".*"></template>
) & amp; JS-Datei für jede Vorlage
collections
jetzt in Sammlungen Ich habe Datei namens "Albums.js" und hat einen ziemlich einfachen Inhalt
var Albums = new Meteor.Collection("Albums");
jetzt in meinem Client-Ordner versuche ich auf diese Variable Albums
zuzugreifen und ich bekomme einen undefinierten Fehler.
Mein Ziel ist es, Daten von form
zu übernehmen und an collection.insert
Verwenden Sie var nicht, es sei denn, Sie möchten es privat für diese Datei haben.
Alben = new Meteor.Collection ("Alben");
Eine weitere Möglichkeit zum Definieren globaler Variablen besteht darin, eine neue Datei zu erstellen, z. collections.js
und lege es direkt in den App-Stammordner (nicht in einen Unterordner!)
In dieser Datei können Sie eine globale Variable / Sammlung definieren (ohne var
Schlüsselwort)
Variablen, die mit var
keyword definiert wurden, sind lokal für die Datei, in der sie definiert sind. Wenn Sie eine globale Variable für mehrere Dateien verwenden möchten, müssen Sie sie ohne das Schlüsselwort var
definieren.
Es sieht so aus, als wäre es nicht im Dokument, aber es ist in der Datei Ссылка (für Version 0.6.0):
Variablen, die mit var auf der äußersten Ebene einer JavaScript-Quelldatei deklariert wurden, sind jetzt für diese Datei privat. Entfernen Sie die Variable, um einen Wert zwischen Dateien freizugeben.
Grundsätzlich wird jede JS-Datei in das Muster (function(){ ... })();
eingeschlossen, um diese Einkapselung bereitzustellen.
Tags und Links meteor