我想在本地安装所有模块,所以我使用“--save-dev”开关安装所有模块,更新package.json。
我正在尝试包含this模块,所以我使用此命令安装:
npm install Faker --save-dev
我的应用结构是这样的:
应用 控制器 楷模 node_modules 骗子 server.js
所以Faker在正确的位置,但是当我在server.js文件中添加此代码时:
var faker = require('./Faker');
我收到以下错误消息:
Error: Cannot find module './Faker'
at Function.Module._resolveFilename (module.js:338:15)
at Function.Module._load (module.js:280:25)
at Module.require (module.js:364:17)
at require (module.js:380:17)
at Object.<anonymous> (/Users/paulcowan/projects/async-talk/server.js:23:13)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Function.Module.runMain (module.js:497:10)
但这有效:
var Faker = require('./node_modules/Faker');
我认为我不必包含node_modules部分。
答案 0 :(得分:2)
要让require
工作,您需要执行以下操作:
var Faker = require('Faker');
npm安装的任何软件包都需要名称。只有本地需要的模块才需要类似路径的需求。您的require(./Faker);
表示“需要相同目录中的模块作为此文件,称为'Faker'”。
答案 1 :(得分:2)
Typescript用户来自,请记住安装@types/faker
。然后,import faker from 'faker';
可以正常工作。
答案 2 :(得分:1)
删除./
。您告诉Node在当前目录中查找模块。
var faker = require('Faker');