Это ужасная практика.
При использовании библиотеки NPM вы не должны редактировать код указанной библиотеки, и я объясню почему:
Когда вы запускаете npm i
, вы фактически устанавливаете пакетыс удаленного сервера.Спасибо NPM, вы не заменяете уже существующие файлы , если версия не была изменена .
Таким образом, это означает, что у вас должна быть фиксированная версия в вашем файле package.json.Любой модификатор semver сотрет вашу модификацию, как только вы запустите npm i
.
Но главная проблема не в этом: главная проблема в непрерывной интеграции или командной работе.
Когда вы отправляете свой код на github, вы не отправляете свои модули узлов .Это означает, что вы не продвигаете свои модификации!И когда у вас есть CI, это ваш инструмент, который загружает пакеты, а не вы: он будет загружать нетронутые пакеты без ваших модификаций.
В конце концов, единственное место, где работает ваша модификация, - это ваш собственный компьютер.
Наконец, даже если таких проблем не было, пакеты написаны на Javascript .Angular использует Typescript: затем он компилирует Typescript в комплект Javascript.
Это означает, что вы не можете использовать Angular-код в файле JS .Это означает, что нет декораторов, нет внедрения зависимостей.Если вы хотите сделать это, вам нужно будет найти скомпилированный код для декораторов и скомпилированный код для внедрения зависимости.