Snažím sa Meteora pochopiť, keď vytváram projekt, a zatiaľ nájdem nejaké veci, ktoré sú doteraz trochu ťažké pochopiť.
1 - Keď povedia, že môžem vytvoriť server
a a client
priečinok, kde som presne určený? Súrodenec .meteor
? A bude všetko na klientskom alebo serverovom rozsahu, keď sa aplikácia spustí alebo musím urobiť niečo iné? Ak vytvorím foo.js
a a foo
funkcia vo vnútri client
môžem jednoducho zavolať foo()
v Meteor.isClient
a bude to fungovať?
2- Potrebujem vytvoriť priečinok pre nahrávanie, aby ľudia mohli nahrávať svoje veci (obrázky). Takže, kde to mám robiť? A ako môžem získať absolútnu cestu k môjmu projektu a nájsť to upload
priečinok vo vnútri?
Počas pokusov som skúšal nasledovné:
fs = Meteor.npmRequire("fs");
__ROOT_APP_PATH__ = fs.realpathSync(".");
ale __ROOT_APP_PATH__
je .meteorlocalbuildprogramsserver
, Skutočne skryté v poriadku ?!
3 - Videl som niektorých ľudí, ktorí nahrávali a ukladali súboryna MongoDB priamo. To je niečo, čo zvyčajne nerobíme s relačnými databázami, presúvame súbor do známeho priečinka na CDN alebo na vlastnom disku a uložíme hash alebo názov súboru, aby sme ho mohli ľahko nájsť. s Meteor + MongoDB? Prečo by som uložil súbor na Mongo namiesto jeho presunu do priečinka?
odpovede:
3 pre odpoveď č. 1nie je žiadny konkrétny spôsob, ako to urobiť, ale meteor odporúča robiť to takto http://docs.meteor.com/#/basic/filestructure
3 pre odpoveď č. 2
STRUKTÚRA FOLDER:
both/ (OR lib/) -- common code for server and client
|- collections/ -- declare collections (e.g Employer = new Meteor.Collection("employer");)
|- router / -- router code(e.g Router.route(..))
client/ -- client side code
|- global/ -- all global variable for client
|- helpers/ -- global helper for client (for all templates)
|- plugins/ -- all the plugins code(if you use any)
|- stylesheets/ -- css / less files
|- templates/ -- all templates
|- home.html -- home template(html)
|- home.js -- home template(js)
public/ -- images/icons/fonts (meteor looking at this file)
server/ -- server code
|- methods/ -- server methods/API (e.g Meteor.methods({...}))
|- publish/ -- publish code from server
toto je základná zložka štruktúry pre meteor projekt, ktorý som nasledovať. Ďalej referencie alebo dokumentácia, Akékoľvek otázky sa môžete poďakovať v komentároch ..