美文网首页
Nodejs的自定义模块加载中的坑

Nodejs的自定义模块加载中的坑

作者: 那未必 | 来源:发表于2015-12-26 13:51 被阅读1170次

加载自定义模块有两种方式:

  • 按文件路径加载模块
  • 通过查找node_modules目录加载模块

按文件路径加载

这种方式需要掌握的知识要点是路径应该如何写:如果require的参数以“/”开头,那么就以绝对路径的方式查找模块名称;如果以“./”或“../”开头,那么就以相对路径来查找模块,这种方式用得最多:

  • require('./list')表示在同一文件夹下查找并加载list.js;
  • require('../list')表示在上一级文件夹下查找并加载list.js

通过查找node_modules目录加载模块

这种方式需要自己在node_modules目录下以自定义模块的名字建立目录,比如:“list”;然后在list目录中至少创建两个文件:第一、主执行文件,如:start.js;第二、package.json文件。
如果主执行文件不是以index.js命名的,那么package.json中至少包含一个参数:main。这里注意有一个坑:package.json中不能使用“'”,json的key也不能不用引号,所以下面两种方式都是错误的:

第一

{
    main:"list.js"
 }

第二

{
   'main':'list.js'
}

正确的写法应该是:

{
   "main":"list.js"
}

或者

{
   "main":"list"
}

相关文章

  • Nodejs的自定义模块加载中的坑

    加载自定义模块有两种方式: 按文件路径加载模块 通过查找node_modules目录加载模块 按文件路径加载 这种...

  • Mac 上 NPM使用

    Nodejs 中除了它自己提供的核心模块外,我们可以自定义模块,也可以使用 第三方的模块。Nodejs 中第三方模...

  • 22Module语法

    概述 CommonJS 是服务器模块加载规范,AMD 是浏览器模块加载规范 前者,nodejs中require和m...

  • nodejs模块加载

    使用nodejs也有很长一段的时间了,但却感觉自己并没有太多的积累。有时候会问自己,“你学了这么久了,比起初学者你...

  • JS 模块化方案对比

    1. CommonJS 规范(同步加载 NodeJS) 2. AMD(异步加载模块 requireJS) 采用异步...

  • 16-手写Node模块系统-将自定义本地包和全局包发布到npm

    如何把自定义的nodejs模块发布到npm平常在nodejs、vue、react的开发过程中,经常会使用到这样的命...

  • 使用require()方法加载模块&模块作用域&module对象

    使用require()方法加载模块 模块作用域在自定义模块中的方法,变量等,只能在当前模块内被访问,这种模块级别的...

  • nodejs 中有哪些常用的内置模块

    path模块nodejs中的path模块用于处理文件和目录的路径url模块在nodejs中url模块是用来解析ur...

  • 从零单排的nodejs

    nodejs使用简要 给个理由 从安装开始 更新及版本选择 模块 NPM 资料 自定义模块 使用模块 http协议...

  • NodeJS模块加载机制

    在NodeJS中一个文件就是一个模块,每个模块都有自己的作用域 全局变量 __filename:当前文件被解析过后...

网友评论

      本文标题:Nodejs的自定义模块加载中的坑

      本文链接:https://www.haomeiwen.com/subject/aghbhttx.html