وحدة المسار هي وحدة مقدمة رسميًا بواسطة Node.js لمعالجة المسارات . يوفر سلسلة من الأساليب والسمات لتلبية احتياجات المستخدمين لمعالجة المسار.
2. يتم استخدام طريقةلربط أجزاء مسار متعددة في سلسلة مسار كاملة.
تنسيق بناء الجملة هو:
...paths(string) تسلسل أجزاء المسار هو كل سلسلة المسار التي تحتاج إلى لصقها.
تجدر الإشارة إلى أن القيمة التي تم إرجاعها هي سلسلة
// تقديم وحدة المسار const path=require("path"). // اكتب المسار المراد ربطه const pathStr=path.join('/a','/b/c','../','./d','e') console.log(pathStr)
استخدم الأسلوب path.basename() للحصول على الجزء الأخير من المسار. تُستخدم هذه الطريقة غالبًا للحصول على
تنسيق بناء الجملة
لاسم الملف في المسار.المسار
const fpath='./a/b/c/index.html' فار الاسم الكامل=path.basename(fpath) console.log(الاسم الكامل) // احصل على اسم الملف باللاحقة المحددة const namepath=path.basename(fpath,'.html') console.log (مسار الاسم)
path.extname() للحصول على امتداد الملف في
المسار
المسار هو معلمة مطلوبة، سلسلة تمثل المسار
العودة: إرجاع سلسلة الامتداد التي تم الحصول عليها
مسار ثابت = يتطلب ("المسار") const fpath='./a/b/c/d/index.html' const ftext =path.extname(fpath) console.log(ftext)
قم بتقسيم الكود المقدم (يحتوي ملف واحد على html وcss وjs في نفس الوقت) إلى ثلاثة ملفات، وهي Index.html Index.css Index.js وقم بتخزينها في
مُجهز في الملف : http://127.0.0.1:5500/node/day1/static/index.htmlكود مصدر
1. قم بإنشاء تعبيرين عاديين لمطابقة علامتي
<style>
و<script>
على التوالي
2. استخدم الوحدة النمطية fs لقراءة ملف HTML الذي يحتاج إلى المعالجة
3. قم بتخصيص طريقة ResolveCSS لكتابة ملف نمط Index.css
4. قم بتخصيص طريقة ResolveJS لكتابة ملف البرنامج النصي Index.js
5. قم بتخصيص أسلوب ResolveHTML لكتابة ملف Index.html
const path=require('path') ثابت خ = يتطلب ('fs') const regStyle=/<style>[sS]*</style>/ const scriptruler=/<script>[sS]*</script>/ // الملف المراد قراءته fs.readFile(path.join(__dirname,'/static/index.html'),'utf-8',function(err,dateStr){ إذا (خطأ){ إرجاع console.log("فشلت القراءة") } حل CSS (تاريخ) حلHTML(dateStr) حل JS (تاريخ) })3.1.2
وظيفة
const r1=regStyle.exec(htmlStr) const newcss=r1[0].replace('<style>','').replace('</style>','') // اكتب ملف CSS المطابق في ملف Index.css المحدد fs.writeFile(path.join(__dirname,'/static/index.css'),newcss,function(err){ إذا (خطأ) قم بإرجاع console.log("فشل الاستيراد"+err.message) console.log("ojbk") }) } وظيفة العزمJS(htmlStr){ const r2=scriptruler.exec(htmlStr) const newcss=r2[0].replace('<script>','').replace('</script>','') // اكتب ملف CSS المطابق في ملف Index.js المحدد fs.writeFile(path.join(__dirname,'/static/index.js'),newcss,function(err){ إذا (خطأ) قم بإرجاع console.log("فشل الاستيراد"+err.message) console.log("ojbk") }) } حل الوظيفةHTML(htmlStr){ const newhtml=htmlStr .replace(regStyle,'<link rel="stylesheet" href="./index.css">') .replace(scriptruler,'<script src="./index.js"></script>') // اكتب ملف CSS المطابق في ملف Index.html المحدد fs.writeFile(path.join(__dirname,'/static/index2.html'),newhtml,function(err){ إذا (خطأ) قم بإرجاع console.log("فشل الاستيراد"+err.message) console.log("ojbk") }) }
النتيجة النهائية هي إزالة النمط من الملف المحدد
. ومع ذلك، نظرًا لأن ملف Index.html الأولي يحتوي على كافة التعليمات البرمجية، فإن الموقع الذي تم تخزينه فيه عند تقسيم النمط لا يزال هو الموقع الأصلي، وبالتالي فإن ملف Index.html النهائي. ثابت الكود