модуль узла не найден после копирования только модулей зависимостей с gulp-npm-dist - PullRequest
0 голосов
/ 03 апреля 2019

Я пытаюсь найти лучший способ упаковать только те зависимости node_modules, которые нужны моему проекту. Итак, я нашел gulp-npm-dist и получил gulpfile.js

var gulp = require('gulp');
var npmDist = require('gulp-npm-dist');
 
gulp.task('CopyNodeDependencies', function() {
  gulp.src(npmDist(), {base:'./node_modules'})
    .pipe(gulp.dest('./node_dependencies'));
});

это помещает только те модули, которые мне нужны из моего пакета. Json:

{
  "version": "1.0.0",
  "name": "common",
  "private": true,
  "devDependencies": {
    "gulp": "^3.9.1",
    "gulp-less": "^3.1.0",
    "gulp-npm-dist": "^0.1.2",
    "gulp-rename": "^1.2.2",
    "pump": "^1.0.1"
  },
  "dependencies": {
    "chart.js": "^2.7.3",
    "chartjs-node-canvas": "^2.0.1",
    "moment": "^2.24.0"
  }
}

но когда я запускаю файл моего узла, у которого есть переменная момент = требование ('момент'); вверху написано, что не может найти момент модуля. Я переименовал node_dependencies в node_modules, и он по-прежнему выдает эту ошибку. Я также пробовал относительные пути, такие как ./node_dependencies/moment, и это все еще не работает.

вот структура папок node_dependencies, если это поможет: enter image description here

1 Ответ

0 голосов
/ 12 апреля 2019

Вы должны покинуть исходный каталог node_modules, чтобы использовать require(). gulp-npm-dist копирует только минимизированные файлы без package.json, yarn.lock и т. д.

...