ماژول fs-extra برای Node.js

13 خرداد 1398, خواندن در 1 دقیقه

ماژول fs-extra متدهایی برای فایل سیستم اضافه میکنه که در ماژول پایه ی fs وجود ندارند. این ماژول میتونه جایگزینی برای fs هم باشه. مستندات fs-extra

اگر با nodejs آشنا نیستید میتوانید دوره آموزش مقدماتی تا پیشرفته Nodejs رو مشاهده کنید.

چرا fs-extra

اگر از وارد کردن mkdirp, rimraf و ncp در پروژه هاتون خسته شدید, این ماژول میتونه راه حل شما مشکل شما باشه.

نصب

برای نصب از طریق npm بصورت زیر عمل کنید :

npm install --save fs-extra

طریقه‌ی استفاده

همانطور که مطرح شد fs-extra میتونه جایگزینی برای fs باشه. تمام متدهای fs به fs-extra انتقال داده شده.

شما دیگه نیازی ندارید که ماژول fs رو وارد کنید.

const fs = require('fs') // this is no longer necessary 

درعوض میتونید بدین صورت عمل کنید :

const fs = require('fs-extra')

یا اگر شما میخواهید مشخص کنید که بجای fs از fs-extra استفاده می کنید, میتونید نام متغیر رو fse بگذارید :

const fse = require('fs-extra')

در عین حال میتونید از هر دو هم استفاده کنید, هرچند اضافیه.

const fs = require('fs')
const fse = require('fs-extra')

Sync و Async

اکثر متدها بصورت پیشفرض async شدند. تمام متدهای async اگر callback فرستاده نشده باشه, یک promise برمی گردونند. متدهای Sync این کار رو اگر به خطا بخورند انجام می دهند.

مثال :

const fs = require('fs-extra')
 
// Async with promises: 
fs.copy('/tmp/myfile', '/tmp/mynewfile')
  .then(() => console.log('success!'))
  .catch(err => console.error(err))
 
// Async with callbacks: 
fs.copy('/tmp/myfile', '/tmp/mynewfile', err => {
  if (err) return console.error(err)
  console.log('success!')
})
 
// Sync: 
try {
  fs.copySync('/tmp/myfile', '/tmp/mynewfile')
  console.log('success!')
} catch (err) {
  console.error(err)
}

متد ها

Async :

	•	copy
	•	emptyDir
	•	ensureFile
	•	ensureDir
	•	ensureLink
	•	ensureSymlink
	•	mkdirs
	•	move
	•	outputFile
	•	outputJson
	•	pathExists
	•	readJson
	•	remove
	•	writeJson


Sync :

	•	copySync
	•	emptyDirSync
	•	ensureFileSync
	•	ensureDirSync
	•	ensureLinkSync
	•	ensureSymlinkSync
	•	mkdirsSync
	•	moveSync
	•	outputFileSync
	•	outputJsonSync
	•	pathExistsSync
	•	readJsonSync
	•	removeSync
	•	writeJsonSync

نکته : شما همچنان میتونید از متدهای بومی Node.js استفاده کنید. 

توجه کنید که متد های ()walk و ()walkSync حذف شده اند. اگر بهشون احتیاج دارید از پکیج های klaw و klaw-sync استفاده کنید.

چه امتیازی به این مقاله می دید؟
خیلی بد
بد
متوسط
خوب
عالی

دیدگاه‌ها و پرسش‌ها

برای ارسال دیدگاه لازم است، ابتدا وارد سایت شوید.

در حال دریافت نظرات از سرور، لطفا منتظر بمانید

در حال دریافت نظرات از سرور، لطفا منتظر بمانید