当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'
我做错了什么?
答案 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