npm install - почему код javascript в node_modules находится в es5 - PullRequest
0 голосов
/ 01 июня 2018

После npm install я нашел код в моих node_modules, как и ожидалось - но он выглядит иначе, чем код в Github.Это почему?Как я могу получить оригинальный код es6 (при условии, что я хочу его отладить)?

Пример - взят из material-ui-pickers :
index.js в github

export { default as DatePicker } from './DatePicker';

export { default as TimePicker } from './TimePicker';

export { default as DateTimePicker } from './DateTimePicker';

export { default as MuiPickersUtilsProvider } from './utils/MuiPickersUtilsProvider';

index.js в моих node_modules

'use strict';

Object.defineProperty(exports, "__esModule", {
  value: true
});

var _DatePicker = require('./DatePicker');

Object.defineProperty(exports, 'DatePicker', {
  enumerable: true,
  get: function get() {
    return _interopRequireDefault(_DatePicker).default;
  }
});

var _TimePicker = require('./TimePicker');

Object.defineProperty(exports, 'TimePicker', {
  enumerable: true,
  get: function get() {
    return _interopRequireDefault(_TimePicker).default;
  }
});

var _DateTimePicker = require('./DateTimePicker');

Object.defineProperty(exports, 'DateTimePicker', {
  enumerable: true,
  get: function get() {
    return _interopRequireDefault(_DateTimePicker).default;
  }
});

var _MuiPickersUtilsProvider = require('./utils/MuiPickersUtilsProvider');

Object.defineProperty(exports, 'MuiPickersUtilsProvider', {
  enumerable: true,
  get: function get() {
    return _interopRequireDefault(_MuiPickersUtilsProvider).default;
  }
});

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

1 Ответ

0 голосов
/ 01 июня 2018

Модули создаются перед публикацией, поэтому они на ES5. Вы не должны касаться ничего внутри node_modules. Вся идея наличия менеджера пакетов, такого как NPM или Yarn, заключается в том, что всегда существует детерминированный способ установки пакетов .

Я не знаю, почему вы хотите прикоснуться к модулю внутри, но если вы работаете над PR для этого модуля, вы должны вместо этого следовать рекомендациям по вкладам , которыеобычно это «Клонировать репозиторий, установить, написать код, отправить PR и готово».

Конечно, если вы хотите использовать код, который вы написали для этого модуля в вашем проекте, тогда вам следует прочитать о ссылка npm или ссылка пряжи .Таким образом, вы можете связать модуль в ваших локальных каталогах с вашим проектом.Это облегчит разработку нужной вам функциональности в модуле и протестирует ее в вашем проекте.

...