登录
注册
node.js 学习社区
初来乍到,贴一下刚刚总结的 requrie() 的方法和解释

老邵

2015-01-29 17:56

require('net'):加载nodejs原生模块,以及本地已经安装好的外部模块;

require('../../myfunc.js'):加载本地的文件模块;

require.resolve('myfunc.js'):查询模块的相对位置,返回值例如:

 /data/work/node/myfunc.js
require.main:返回主模块的详细信息,同时列出已加载进来的其他模块,返回值如下


 loaded: true,
  children:
   [ { id: '/data/work/node_modules/express/index.js',
       exports: [Object],
       parent: [Circular],
       filename: '/data/work/node_modules/express/index.js',
       loaded: true,
       children: [Object],
       paths: [Object] },
     { id: '/data/work/node_modules/cookie-parser/index.js',
       exports: [Object],
       parent: [Circular],
       filename: '/data/work/node_modules/cookie-parser/index.js',
       loaded: true,
       children: [Object],
       paths: [Object] },
     { id: '/data/work/node_modules/cookie-session/index.js',
require.cache:所有缓存好的模块,返回值如下


 '/data/work/node_modules/node-uuid/uuid.js':
   { id: '/data/work/node_modules/node-uuid/uuid.js',
     exports:
      { [Function: v4]
        v1: [Function: v1],
        v4: [Circular],
        parse: [Function: parse],
        unparse: [Function: unparse],
        BufferClass: [Function: Array] },
     parent:
      { id: '/data/work/controllers/user.js',
        exports: [Function],
        parent: [Object],
        filename: '/data/work/controllers/user.js',
        loaded: true,
        children: [Object],
        paths: [Object] },
     filename: '/data/work/node_modules/node-uuid/uuid.js',
     loaded: true,
     children: [],
     paths:
      [ '/data/work/node_modules/node-uuid/node_modules', 
        '/data/work/node_modules',
        '/data/node_modules' ] } }
这里说一下删除缓存的方法:


delete require.cache[require.resolve('../../myfunc.js')];
require.extensions:按照后缀名不同,可使用的编制方法,返回值如下


{ '.js': [Function], '.json': [Function], '.node': [Function] }


回复 · 1

发表回复

你可以在回复中 @ 其他人