/*
*一:从node_modules目录中加载模块;
* 向这样的写法:
* require("aa.js")
* 则node将aa.js文件视为node_modules目录下的一个文件
* 如果aa.js文件的绝对路径是这样的:e:node\item\item1\gys\node_modules\aa.js
* 在gys文件夹下有app.js,和node_modules是同一级
* */
//aa.js文件中的代码
var name="guoyansi";
function setname(n){
name=n;
}
function getname(){
return name;
}
exports.getname=getname;
exports.setname=setname;
//app.js代码:
var aa=require("aa.js");
console.log(aa.getname());
aa.setname("思思博士");
console.log(aa.getname());
/*结果是:
*guoyansi
* 思思博士
*/
/*
* 他的搜索过程是这样的.
* \node\item\item1\gys\node_modules\aa.js
* \node\item\item1\node_modules\aa.js
* \node\item\node_modules\aa.js
* \node\node_modules\aa.js
* node_modules\aa.js
* */
//如果这些路径都找不到指定的文件,那么会抛出异常 /*
* 二:使用目录来管理模块
* 在node中,可以将目录名指定为模块名,以便可以通过目录来管理模块,只需要为该目录指定一个入口点.
* 在node-modules子目录中创建foo文件夹,在foo中创建index.js文件,当使用如下代码时,将会自动加载index.js模块
* var index=require("foo");
* 现在不想让加载的文件名叫index.js,叫myFile.js
* 在执行的话 就会出现异常
* 可以这样写;
*在foo文件夹中添加package.json文件
* 代码这样
* {
* "main":"./myFile.js"
* }
* 这样执行的效果和上面是一样的
* */ /*
* 从全局目录中加载模块
* 如果在操作系统的环境中设置了NODE_PATH变量,并将变量值设置为一个有效的磁盘目录,当你在require函数中只指定模块名,而没有指定模块文件的路径,而且node.js从其他路径中寻找不到需要被加载的模块文件时,node将从node_path变量所指定的磁盘目录中寻找并加载该模块文件.
* */

node的模块管理的更多相关文章

  1. Node.js的安装以及Node.js的模块管理

    索引: Node.js的安装以及Node.js的模块管理Node.js开发环境搭建以及对ES6的支持Node.js构建Vue.js项目Vue.js单文件组件的开发基于Vue.js的UI组件(Eleme ...

  2. (转)在Windows平台上安装Node.js及NPM模块管理

    本文转载自:http://www.cnblogs.com/seanlv/archive/2011/11/22/2258716.html 之前9月份的时候我写了一篇关于如何在Windows平台上手工管理 ...

  3. 每天记录一点:NetCore获得配置文件 appsettings.json vue-router页面传值及接收值 详解webpack + vue + node 打造单页面(入门篇) 30分钟手把手教你学webpack实战 vue.js+webpack模块管理及组件开发

    每天记录一点:NetCore获得配置文件 appsettings.json   用NetCore做项目如果用EF  ORM在网上有很多的配置连接字符串,读取以及使用方法 由于很多朋友用的其他ORM如S ...

  4. 使用yarn代替npm作为node.js的模块管理器

    使用yarn代替npm作为node.js的模块管理器 转 https://www.jianshu.com/p/bfe96f89da0e     Fast, reliable, and secure d ...

  5. [Web 前端] 使用yarn代替npm作为node.js的模块管理器

    cp from : https://www.jianshu.com/p/bfe96f89da0e     Fast, reliable, and secure dependency managemen ...

  6. 深入浅出node(2) 模块机制

    这部分主要总结深入浅出Node.js的第二章 一)CommonJs 1.1CommonJs模块定义 二)Node的模块实现 2.1模块分类 2.2 路径分析和文件定位 2.2.1 路径分析 2.2.2 ...

  7. Node.js模块

    每一个Node.js都是一个Node.js模块,包括JavaScript文件(.js).JSON文本文件(.json)和二进制模块文件(.node). mymodul.js function Hell ...

  8. Webpack: 为Web开发而生的模块管理器[转]

    Webpack: 为Web开发而生的模块管理器 原文地址:http://hanjianwei.com/2014/09/10/webpack-package-manager-for-web/ 10 Se ...

  9. npm模块管理器入门

    什么是 NPM npm 是 Node 官方提供的包管理工具,他已经成了 Node 包的标准发布平台,用于 Node 包的发布.传播.依赖控制.npm 提供了命令行工具,使你可以方便地下载.安装.升级. ...

随机推荐

  1. EasyAACEncoder海思/ARM平台优化G711、G726转AAC的CPU占用高问题

    本文转自EasyDarwin开源团队成员Kim的博客:http://blog.csdn.net/jinlong0603/article/details/75645378 引言 目前EasyDarwin ...

  2. Linux系统中的一些重要的目录

    Linux系统中的一些重要的目录 1)bin目录 :基础系统所需要的命令位于此目录,是最小系统所需要的命令,如:ls, cp, mkdir等.这个目录中的文件都是可执行的,一般的用户都可以使用2)sb ...

  3. Django的CBV

    CBV CBV(class base views) 就是在视图里使用类处理请求. Python是一个面向对象的编程语言,如果只用函数来开发,有很多面向对象的优点就错失了(继承.封装.多态).所以Dja ...

  4. Python源码分析(二) - List对象

    python中的高级特性之一就是内置了list,dict等.今天就先围绕列表(List)进行源码分析. Python中的List对象(PyListObject) Python中的的PyListObje ...

  5. apk系统签名命令

    java -jar signapk.jar platform.x509.pem platform.pk8 D:/ClockSetting.apk D:/ClockSettingSigned.apk 需 ...

  6. WPF 中使用附加属性,将任意 UI 元素或控件裁剪成圆形(椭圆)

    不知从什么时候开始,头像流行使用圆形了,于是各个平台开始追逐显示圆形裁剪图像的技术.WPF 作为一个优秀的 UI 框架,当然有其内建的机制支持这种圆形裁剪. 不过,内建的机制仅支持画刷,而如果被裁剪的 ...

  7. WPF 同一窗口内的多线程 UI(VisualTarget)

    WPF 的 UI 逻辑只在同一个线程中,这是学习 WPF 开发中大家几乎都会学习到的经验.如果希望做不同线程的 UI,大家也会想到使用另一个窗口来实现,让每个窗口拥有自己的 UI 线程.然而,就不能让 ...

  8. Python学习-赋值、浅copy和深copy

    Python Copy: 在Python语言中,分为浅拷贝和深拷贝两种形式,也就是官方文档中的Shadow copy和Deep copy.在对简单的对象(object)进行复制时,两者没有区别,如下面 ...

  9. BZOJ4145 [AMPPZ2014]The Prices

    题意 你要购买m种物品各一件,一共有n家商店,你到第i家商店的路费为d[i],在第i家商店购买第j种物品的费用为c[i][j],求最小总费用. \(n \leq 100,m \leq 16\) 分析 ...

  10. python string 之 format

    python 在 2.6之后支持了string的format功能, 很强大, 应该成为使用习惯. http://blog.csdn.net/handsomekang/article/details/9 ...