`
CshBBrain
  • 浏览: 637502 次
  • 性别: Icon_minigender_1
  • 来自: 成都
博客专栏
B7d9bf34-126e-301f-819e-81f2615b5a2a
开源WebSocket服务...
浏览量:142024
Group-logo
HTML5移动开发
浏览量:135347
社区版块
存档分类
最新评论

nodejs的require模块(文件模块/核心模块)及路径介绍

 
阅读更多

转自:http://www.jb51.net/article/33266.htm

 

在nodejs中,模块大概可以分为核心模块和文件模块,核心模块是被编译成二进制代码,引用的时候只需require表示符即可,文件模块,则是指js文件、json文件或者是.node文件在nodejs中,模块大概可以分为核心模块和文件模块。 


核心模块是被编译成二进制代码,引用的时候只需require表示符即可,如(require('net'))。 

文件模块,则是指js文件、json文件或者是.node文件。在引用文件模块的时候后要加上文件的路径:/.../.../xxx.js表示绝对路径、./xxx.js表示相对路径(同一文件夹下的xxx.js),../表示上一级目录。如果既不加/.../、../又不加./的话,则该模块要么是核心模块,要么是从一个node_modules文件夹加载。 

对于加载模块时既没指出./ ../ /.../时,加载模块的搜索路径。如果'/home/ry/projects/foo.js' 中的文件调用了 require('bar.js') ,node将在下面的位置进行搜索: 

复制代码代码如下:

/home/ry/projects/node_modules/bar.js 
/home/ry/node_modules/bar.js 
/home/node_modules/bar.js 
/node_modules/bar.js 


文件夹作为模块: 
首先在文件夹的根下建立package.json文件,它标识了一个主模块。一个package.json中的内容可能如下: 

复制代码代码如下:

{ "name" : "some-library", "main" : "./lib/some-library.js" } 


如果这是在一个文件夹./some-library下,那么require('./some-library')时将试图加载./some-library/lib/some-library.js如果在这个目录下没有package.json文件,node将试图从这个目录下加载index.js或index.node文件。例如,如果上面没有package.json文件,那么require('./some-library')时,将试图加载下面的文件: 

复制代码代码如下:

./some-library/index.js 
./some-library/index.node 
 

 

分享到:
评论

相关推荐

    浅谈NodeJS中require路径问题

    学习Nodejs也是出于对这个新产物的好奇,而且有两个重要项目也需要他的支持,所以要好好学学这个...在nodejs中,模块大概可以分为核心模块和文件模块。核心模块是被编译成二进制代码,引用的时候只需require表示符即可

    vue-cli脚手架build目录下utils.js工具配置文件详解

    此文章用来解释vue-cli脚手架build目录中的utils....// 引入nodejs路径模块 var path = require('path') // 引入config目录下的index.js配置文件 var config = require('../config') // 引入extract-text-webpack-plugi

    nodejs中模块定义实例详解

    一个.js文件就是一个nodejs的模块,模块与文件是一一对应的,那么引用模块就是require(‘文件路径’)。 如: var circle = require('./circle.js'); console.log( 'The area of a circle of radius 4 is ' + circle....

    Nodejs读取文件时相对路径的正确写法(使用fs模块)

    在开发Nodejs中,我们往往最常用的模块就是fs核心模块(fs.readFile)来读取文件。代码如下: 但是运行之后,并没有按照想象中一样,读取test.html文件内容,这是一个bug,坑爹的玩意,解决办法: 其实由于运行环境的...

    req-dir:nodejs模块需要路径中的所有文件

    此模块需要目录中所需路径内的所有文件(仅.json,.js和.coffee),并使用此模块返回对象。 用法 首次安装 npm i --save req-dir 并在您的文件中使用: var reqDir = require ( 'req-dir' ) ; var path = '.' ; /...

    详解nodeJS之路径PATH模块

    path模块包含一系列处理和转换文件路径的工具集,通过 require(‘path’) 可用来访问这个模块。本文将详细介绍path模块 路径组成 【path.dirname(p)】 返回路径p所在的目录 var path = require('path'); console....

    Nodejs如何复制文件

    前端童鞋都知道,javascript是没有权限操作磁盘文件的,server童鞋一向都很鄙视。但是nodejs可谓让咱们前端扬眉吐气啊,最近在学node,其强大的功能让人异常激动和兴奋。...这是异步读取文件,filename是文件路径,e

    getmodule:包括相对于您的根路径的本地NodeJS模块

    获取模块包括相对于您的根路径的本地NodeJS模块安装npm i -- save getmodule用法将getmodule添加到您的app.js (或您的应用程序的主文件)的顶部: require ( 'getmodule' ) ; 现在,您可以基于应用程序的根路径调用...

    nodejs的压缩文件模块archiver用法示例

    本文实例讲述了nodejs的压缩文件模块archiver用法。分享给大家供大家参考,具体如下: 发现了个更好用的 zip-local https://www.npmjs.com/package/zip-local var zipper = require(zip-local); zipper.sync.zip(/...

    promise-resolve-path:解析文件路径或文件路径列表的NodeJs模块

    承诺解决路径解析文件路径或文件路径列表的NodeJs模块。安装通过npm安装。 npm install git+https://github.com/lucentminds/promise-resolve-path.git用途: var resolvePath = require ( 'promise-resolve-path' )...

    Nodejs 对 内置模块fs简单使用技巧与操作方法,模块文件夹的curd与文件的curd

    1.对nodejs内置模块fs的简单操作与使用方法,对文件夹和文件进行同步和异步操作时,异步需要使用callback回调函数,同步则不需要,而在异步操作中,都是错误的回调优先 1.如对nodejs是什么,以及nodejs npm配置源是...

    WEBAPP模块化开发框架scrat.zip

    在模块化js中引用模块如nodejs般使用require函数就可以了// 引用其他模块var foo = require('foo');// 引用当前目录下的文件var conf = require('./conf.js');// 调用模块接口foo.render(document.body);在...

    node-red-contrib-require:需要第三方模块的红色节点

    节点红色贡献 节点红色的自定义节点,需要第三方模块。 在nodejs的世界中,有许多...您可以使用文件路径来要求该模块,例如./my-module/index.js 。 注意:该模块必须符合CommonJS规范。 执照 该项目中的代码已获得。

    module-alias:在Node中注册目录和自定义模块路径的别名

    创建目录别名,并像老板一样在NodeJS中注册自定义模块路径! 在Node中不再需要像这样的狗屎编码路径: require ( '../../../../some/very/deep/module' ) 这种疯狂足够了! 只需创建一个别名并以正确的方式进行...

    node.js使用require()函数加载模块

     * require函数使用一个参数,参数值可以带有完整路径的模块的文件名,也可以为模块名.当使用node中提供的模块时,在require函数中只需要指定模块名即可.  * */ //建立一个页面2.js;代码如下 var name=”思思博士”; ...

    nodejs判断文件、文件夹是否存在及删除的方法

    本文实例讲述了nodejs判断文件、文件夹是否存在及删除的方法。分享给大家供大家参考,具体如下: 判断文件、文件夹是否存在 ...删除文件夹及文件 node.js的fs模块只提供了删除文件unlink夹及目录rmdi

    NodeJS中的模块是单例的吗?

    }1240次浏览 评价:好中差  笔者之前在使用require导入模块时,特别是在导入有状态的模块时,笔者会考虑其是否在多次导入情况下依然保持单例特性,或者说对于同一个文件在不同路径下导入时,是否能够识别为...

    nodeJS破解谷歌翻译接口

    nodejs通过计算tkk和tk实现破解谷歌翻译api(代码中arguments数组是命令行传入参数)。var request = require('request') 括号中写自己的request模块路径。

Global site tag (gtag.js) - Google Analytics