繁体   English   中英

为什么npm不能“要求”我的模块?

[英]Why can't npm “require” my module?

我正在编写一个npm模块并在发布之前对其进行测试。 我正在使用http://podefr.tumblr.com/post/30488475488/locally-test-your-npm-modules-without-publishing中描述的方法,但是甚至无法获得一个简单的模块。 这是我的package.json:

{
  "name": "mystuff",
  "version": "0.0.1",
  "description": "",
  "main": "./lib/index",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "",
  "license": "MIT"
}

这是我愚蠢的简单index.js:

'use strict'

exports.test_call = function() {
  return "Hello Module"
}

我希望我只需要我的模块即可,但是失败了:

> require('mystuff')
Error: Cannot find module 'mystuff'
    at Function.Module._resolveFilename (module.js:327:15)
    at Function.Module._load (module.js:278:25)
    at Module.require (module.js:355:17)
    at require (internal/module.js:13:17)
    at repl:1:1
    at REPLServer.defaultEval (repl.js:252:27)
    at bound (domain.js:281:14)
    at REPLServer.runBound [as eval] (domain.js:294:12)
    at REPLServer.<anonymous> (repl.js:417:12)
    at emitOne (events.js:83:20)

但是,确实确实在我期望的位置安装了该模块,并且可以按预期工作:

> require('./node_modules/mystuff')
{ test_call: [Function] }
> require('./node_modules/mystuff').test_call()

为什么我不能要求该模块? 我想念什么?

将node和npm升级到v9.3.0 / v5.5.1之后,这不再是问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM