Модуль файловой системы узла fs
позволяет нам играть с файлами в операционной системе.
Итак, что это может мне помочь? любой тип CRUD-операции (создание, чтение, обновление и удаление) в системе. Создание файлов журналов, сохранение своевременных данных о погоде из API через заданный интервал времени и многое другое.
После завершения черновика Create part (CRUD). Я узнал, что этот пост будет длинным. Мой первоначальный подход состоял в том, чтобы объяснить все 4 операции CRUD, но я подробно объяснил каждый синтаксис кода, чтобы объяснить его как можно более значимым.
Это, несомненно, поможет вам понять и построить основы Node.js.
Итак, теперь мне нужно разбить Node.js: Understanding File System Module на 4 части. Это первая часть - Create. Я обновлю здесь ссылки, как только напишу их.
Давайте начнем. 😎
⚠️ ВАЖНО: На этом этапе я предполагаю, что у вас установлен Node.js, и я ожидаю, что вы будете кодировать что поможет вам лучше понять. Вы можете установить, перейдя на официальный сайт Node.js.
💡 СОВЕТ: В этом руководстве я буду использовать редактор кода Visual Studio и также рекомендую.
Шаг 1. Загрузка модуля файловой системы
Чтобы использовать модуль файловой системы, нам сначала нужно импортировать его в наш файл. Мы делаем это, добавляя приведенный ниже код в наш новый файл server.js
.
var filesystem = require("fs");
👊 Давайте разберем этот код:
fs
- это наш модуль файловой системы, который поставляется предварительно упакованным при установке node.- Мы используем функцию
require()
для загрузки модулей в нашserver.js
файл. Примечание.require()
является частью node.js, а не JavaScript. - Мы создаем переменную
filesystem
(вы можете назвать ее как угодно, покемон тоже) и назначаем ссылку загруженному модулюfs
. Таким образом, мы можем использовать его в нашем коде.
⚡ ИЗУЧИТЬ:
filesystem
ссылается на модульfs
, но не содержит в нем полныйfs
модуль (или его копию). Такой способ работы называется передачей по ссылке, только примитивные типы данных могут передаваться по значению.
Теперь у нас есть все инструменты модуля файловой системы, доступные через filesystem
. Перейдите в новую строку, введите filesystem.
(с.), И вы увидите все доступные методы, которые мы можем использовать.
Шаг 2: Создание нашего файла с покемонами
Давайте выполним нашу первую операцию CRUD - Create. Мы создадим текстовый файл, добавим в него информацию и сохраним. На самом деле мы ничего не будем делать, кроме написания кода, все будет делать автоматически нашим сервером 😉.
Добавьте следующие строки кода в следующую строку сразу после того места, где мы загрузили модуль fs
. Не забудьте нажать Сохранить (Ctrl + S).
filesystem.appendFileSync( "favourite-pokemon.txt", "My favourite Pokemon is Pikachu 😍" );
👊 Давайте разберем этот код:
appendFileSync()
- один из методов в модуле файловой системы, который используется для добавления указанного содержимого в файл. Что делать, если у нас нет файла? Не волнуйтесь, он будет создан.appendFileSync(path, data, option)
принимает 3 аргумента.- В
path
я мог бы использовать что-то вроде этого./favourite-pokemon.txt
, и это все равно работало бы. Почему? потому что он ищет имя файлаfavourite-pokemon.txt
в текущем каталоге, или я должен сказать, где находится вашserver.js
файл. Если он не найден, он просто создаст его. - В
data
мы можем поместить строку любого типа. Только не забудьте заключить его в""
кавычки. option
не является обязательным, поэтому я ничего не добавил в свой третий аргумент. В основном он используется для указанияencoding
,mode
иflag
. Для простоты я не буду здесь объяснять, но вы всегда можете узнать, как работают необязательные параметры.
В нашем модуле файловой системы есть и другие методы для создания файлов. appendFile()
, open()
и writeFile()
.
❓ ВОПРОС: В чем разница между
appendFileSync()
иappendFile()
? Поскольку оба используются для добавления данных в файл, какова важность синхронного или асинхронного способа добавления данных?
Расскажите в комментариях, или я объясню в следующем посте. Будьте на связи.
Шаг 3: Запуск нашего сервера
У нас есть все необходимое, мы загрузили наш модуль файловой системы fs
и создали для него ссылочную переменную filesystem
, затем мы сказали нашему серверу создать файл favourite-pokemon.txt
и заполнить его моим любимым именем покемона, используя метод appendFileSync()
.
Теперь пришло время Node.js сделать то, что ему говорят. Давайте запустим наш сервер.
Нажмите Ctrl
+ `
(обратная кавычка), чтобы открыть терминал в VS Code. Убедитесь, что вы находитесь в каталоге, в котором находится ваш server.js
файл. Затем выполните приведенную ниже команду, нажав Enter
.
node server.js
В левой части редактора, который называется Explorer, вы увидите новый файл, созданный favourite-pokemon.txt
(нажмите _41 _ + _ 42 _ + _ 43_, чтобы открыть проводник). Щелкните этот файл, и вы увидите, что наш сервер успешно создал файл с моим любимым покемоном. Ура! 🎉
Поскольку мы не сказали нашему серверу продолжать работу, узел выполнит код и завершит его.
Знаете что-нибудь интересное и полезное?
Не стесняйтесь сказать мне здесь или подписаться на меня в Twitter. Ваш вклад поможет сделать этот пост более ценным и поможет другим, как вы и я.
Примечание команды разработчиков Plain English
Вы знали, что у нас четыре публикации? Проявите немного любви, предложив им следующее: JavaScript на простом английском, AI на простом английском, UX на простом английском , Python на простом английском - спасибо и продолжайте учиться!
Кроме того, мы всегда заинтересованы в продвижении хорошего контента. Если у вас есть статья, которую вы хотели бы отправить в какую-либо из наших публикаций, отправьте электронное письмо по адресу [email protected] с вашим именем пользователя Medium и тем, о чем вы хотите написать, и мы вернуться к вам!