需要来自gulpfile.js中相对路径的node_modules

时间:2018-01-18 19:17:36

标签: javascript node.js gulp node-modules

node_modules文件夹与gulpfile.js相同时,一切正常。

但每当我将node_modules置于其外的任何地方时,我似乎无法通过使用相对路径使其工作:

var gulp = require('../../node_modules/gulp');
var rename = require('../../node_modules/gulp-rename');

我收到以下消息:

[20:11:45] Task 'default' is not in your gulpfile
[20:11:45] Please check the documentation for proper gulpfile formatting

但实际上我有一个default任务,它在不使用相对路径时按预期运行。

我也试过在没有指定node_modules文件夹的情况下包含它们,因为我应该这样:

var gulp = require('../../gulp');
var rename = require('../../gulp-rename');

但是我收到以下错误:

  

module.js:538      扔错了;      ^

     

错误:无法找到模块' ../../ gulp'

我做错了什么?

1 个答案:

答案 0 :(得分:1)

尝试在没有路径的情况下调用require,如下所示:

var gulp = require('gulp');
var rename = require('gulp-rename');

这会触发require搜索node_modules文件夹,自动检查每个父文件夹到根目录。 https://nodejs.org/api/modules.html#modules_loading_from_node_modules_folders