Почему? Сохраняйте свой код СУХИМ, не повторяя себя в проектах, создав личный пакет npm из собственных служебных функций.
Эта серия и отказ от ответственности. Эта статья является частью серии, в которой я исследую вопросы, возникающие у меня как младшего разработчика, и выводы, к которым я пришел. Содержание этой статьи представляет собой мое лучшее текущее понимание, которое для юниора может быть не лучшей практикой, не целесообразным или даже правильным. Я приветствую любые идеи, исправления и советы, которые могут помочь мне и нашему сообществу стать лучше.
Эта статья может оказаться наиболее полезной для вас, если у вас есть следующий опыт:
- Понять, как импортировать, экспортировать, запрашивать файлы
- Иметь опыт использования пакетов npm
- Работал над несколькими вашими личными проектами
1/4 Ситуация:
Вы работали над разными проектами, где вам приходилось неоднократно решать одни и те же задачи? Была ли это небольшая функция, которую несложно написать вручную, но чувствуется, что она должна быть встроенным методом?
2/4 Развивайте свои навыки и экономьте время с помощью персонального служебного пакета npm:
Вы можете сэкономить время и развить свои навыки, написав собственный служебный пакет npm. Как только у вас будет пакет npm для себя, вы заметите, что пишете одни и те же функции в разных проектах. Вы можете добавить эту функцию в свой пакет npm, и вам больше никогда не придется ее писать.
Как только вы проявите должную осмотрительность и убедитесь, что ваша функция работает правильно, вам больше никогда не придется ее писать. Просто используйте свои собственные функции из собственного пакета npm. В процессе, вероятно, вы также лучше поймете код.
Существует множество других служебных пакетов npm, таких как популярный lodash, который вы могли бы использовать. Но смысл и преимущество создания собственного пакета в том, что это ваш собственный личный набор инструментов. Код, который вы написали, и код, с которым у вас есть личный опыт.
По мере того, как вы развиваете свои навыки, ваши инструменты могут расти вместе с вами в красивой доступной упаковке.
3/4 Как опубликовать пакет npm
Существует много других подробных руководств по публикации npm-пакета, и эта статья не является целью этой статьи, поэтому ниже будет приведен только сжатый контрольный список для справки. Подробные инструкции см. в других статьях.
Минимальное краткое руководство:Как сделать красивый крошечный пакет npm и опубликовать его Джонатан Вуд
Подробное руководство: Как создать и опубликовать пакет NPM — пошаговое руководство от Бенджамина Семаха
Контрольный список
- Для вашего пакета npm:
-Убедитесь, что вашиpackage.json
includes содержат как минимум имя и версию.
{ "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. Если вы делаете пакет, дайте мне знать и поделитесь здесь, что вы делаете!