Почему? Сохраняйте свой код СУХИМ, не повторяя себя в проектах, создав личный пакет npm из собственных служебных функций.

Эта серия и отказ от ответственности. Эта статья является частью серии, в которой я исследую вопросы, возникающие у меня как младшего разработчика, и выводы, к которым я пришел. Содержание этой статьи представляет собой мое лучшее текущее понимание, которое для юниора может быть не лучшей практикой, не целесообразным или даже правильным. Я приветствую любые идеи, исправления и советы, которые могут помочь мне и нашему сообществу стать лучше.

Эта статья может оказаться наиболее полезной для вас, если у вас есть следующий опыт:

  • Понять, как импортировать, экспортировать, запрашивать файлы
  • Иметь опыт использования пакетов npm
  • Работал над несколькими вашими личными проектами

1/4 Ситуация:

Вы работали над разными проектами, где вам приходилось неоднократно решать одни и те же задачи? Была ли это небольшая функция, которую несложно написать вручную, но чувствуется, что она должна быть встроенным методом?

2/4 Развивайте свои навыки и экономьте время с помощью персонального служебного пакета npm:

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

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

Существует множество других служебных пакетов npm, таких как популярный lodash, который вы могли бы использовать. Но смысл и преимущество создания собственного пакета в том, что это ваш собственный личный набор инструментов. Код, который вы написали, и код, с которым у вас есть личный опыт.

По мере того, как вы развиваете свои навыки, ваши инструменты могут расти вместе с вами в красивой доступной упаковке.

3/4 Как опубликовать пакет npm

Существует много других подробных руководств по публикации npm-пакета, и эта статья не является целью этой статьи, поэтому ниже будет приведен только сжатый контрольный список для справки. Подробные инструкции см. в других статьях.

Минимальное краткое руководство:Как сделать красивый крошечный пакет npm и опубликовать его Джонатан Вуд

Подробное руководство: Как создать и опубликовать пакет NPM — пошаговое руководство от Бенджамина Семаха

Контрольный список

  • Для вашего пакета npm:
    -Убедитесь, что ваши package.jsonincludes содержат как минимум имя и версию.
{
"name": "NPM_USERNAME",
"version": "#.#.#"
}

-Ваши файлы пакетов могут быть организованы, как показано ниже.

.
├── index.js
├── LICENSE
├── package.json
├── README.md
└── lib/
    ├── index.js
    ├── function1.js
    ├── function2.js
    └── function3.js

-Вот пример отдельной функции

// ./lib/function1.js

/**
 * @param {String} text to console log
 * @returns {String} input text
 */
function function1(text) {
  return console.log(text)
}
module.exports = function1

-Вы можете организовать свои функции в подкаталоге index.jsподобно этому

// ./lib/index.js

let objectContainingFunctions = {}
objectContainingFunctions.function1 = require("./function1")
objectContainingFunctions.function2 = require("./function2")
objectContainingFunctions.function3 = require("./function3")
module.exports = objectContainingFunctions

-Наконец, корневой каталог должен иметь index.js с moduel.export функциями, это может выглядеть так

// ./index.js

const objectContainingFunctions = require("./lib/index.js")
module.exports = objectContainingFunctions
  • Создайте свою учетную запись npm, https://www.npmjs.com/signup
  • Войдите в npm через терминал и введите имя пользователя, пароль и адрес электронной почты через npm login
  • Чтобы публично опубликовать свой пакет npm: npm publish --access=public
  • В случае успеха вы должны увидеть +@NPM_USERNAME/PACKAGE@#.#.# и получить уведомление по электронной почте.

4/4 В заключение

Для кода, который вы повторяете в разных проектах, вы можете создать и добавить этот код в личный пакет npm. Затем используйте этот пакет и код в будущих проектах. Это экономит время на кодирование, должно улучшить ваше понимание кода, который вы решите добавить, а также создать свой собственный набор инструментов.

Я надеюсь, что это поможет и вдохновит вас на создание ваших собственных пакетов npm. Если вы делаете пакет, дайте мне знать и поделитесь здесь, что вы делаете!