2011-12-02 10 views

Respuesta

1

Aquí está el documento desde el sitio web oficial del nodo js. Acabo de poner los pasos completos aquí, sino en términos de su pregunta, parece ---- esto es lo que quería saber ----

require(X) from module at path Y 
1. If X is a core module, 
    a. return the core module 
    b. STOP 
2. If X begins with './' or '/' or '../' 
    a. LOAD_AS_FILE(Y + X) 
    b. LOAD_AS_DIRECTORY(Y + X) 
3. LOAD_NODE_MODULES(X, dirname(Y)) 
4. THROW "not found" 

LOAD_AS_FILE(X) 
1. If X is a file, load X as JavaScript text. STOP 
2. If X.js is a file, load X.js as JavaScript text. STOP 
3. If X.json is a file, parse X.json to a JavaScript Object. STOP 
4. If X.node is a file, load X.node as binary addon. STOP 

LOAD_AS_DIRECTORY(X) ---- here is what you wanted to know ---- 
1. If X/package.json is a file, 
    a. Parse X/package.json, and look for "main" field. 
    b. let M = X + (json main field) 
    c. LOAD_AS_FILE(M) 
2. If X/index.js is a file, load X/index.js as JavaScript text. STOP 
3. If X/index.json is a file, parse X/index.json to a JavaScript object. STOP 
4. If X/index.node is a file, load X/index.node as binary addon. STOP 

Más información, por favor, compruebe

Cuestiones relacionadas