2012-05-03 2 views
9

Ich erstelle eine Webanwendung, die einige Konfigurationsdateien bearbeitet, die auf der HD eines Benutzers gespeichert sind, und beschloss, Meteor eine Aufnahme zu geben.Zugriff auf das Modul node.js Dateisystem in Meteor

Ich möchte Node.js Dateisystem-Modul verwenden, um mit I/O der Konfigurationsdateien umzugehen, aber ich war nicht in der Lage, herauszufinden, wie Sie das Modul einbinden. Nach einiger Suche fand ich den folgenden Code hier auf StackOverlow, die mich um das Modul ermöglichen, sollten erfordern:

var require = __meteor_bootstrap__.require; 
var fs = require('fs'); 

Doch selbst mit diesem innerhalb des if (Server) Teils meines Code platziert, mein Anwendung wirft immer noch einen Fehler und sagt mir, dass 'fs' nicht definiert ist.

Hat jemand anderes dieses Problem festgestellt?

+0

Ich habe Ihren genauen Code innerhalb der 'Meteor.startup' Funktion und es funktionierte zu verwenden. Ich konnte das fs-Objekt verwenden, um eine Datei zu stattern. Arbeiten Sie an einem neuen Projekt, so dass Sie sicher sein können, dass es nicht noch etwas anderes gibt, das die Dinge komplizierter macht? – mwcz

+0

Danke, dass Sie dem Code einen Lauf gegeben haben. Ich habe den gleichen Code in einem neuen Projekt versucht, aber kein Glück. Vielleicht referenziere ich die Anforderung nicht richtig ... Wenn es Ihnen nichts ausmacht, können Sie mitteilen, wo und wie Sie diese Datei angegeben haben? –

+0

https://gist.github.com/2591352 Hoffe, das hilft. – mwcz

Antwort

18

Von 0.6.0 benötigen Sie Npm.require

var fs = Npm.require('fs'); 
+0

ich sehe nur Npm ist nicht definiert. Irgendwelche Ideen? – EnchanterIO

+0

Versuchen Sie dies auf Ihrer Browser-Seite js oder Server-Seite js zu tun? – Akshat

+0

Hm ... in Sammlungen Ordner ... Ich bin mir nicht sicher, ob seine Server- oder Client-Seite aber wahrscheinlich Server-Seite? – EnchanterIO