Heim > Artikel > Web-Frontend > Eine kurze Analyse des Pfadmoduls des Knotens
Das Pfadmodul ist ein in NodeJS integriertes Modul zur Verarbeitung von Datei-/Verzeichnispfaden. Es kann als Toolbox betrachtet werden, die uns viele Methoden zur Verfügung stellt, natürlich alle im Zusammenhang mit der Pfadverarbeitung. Gleichzeitig erscheint das Pfadmodul häufig in der Front-End-Entwicklung, beispielsweise bei der Konfiguration von Webpack. In diesem Artikel geht es um das Pfadmodul des Knotens. „Pfadmodul von Node“ Natürlich ist die Praxis wichtiger als die Theorie
, also habe ich einen Fall für die Praxis vorbereitetPfadmodul ist ein von Node.js offiziell bereitgestelltes Modul fürVerarbeitungspfade
. Es bietet eine Reihe von Methoden und Attributen, um den Anforderungen der Benutzer an die Pfadverarbeitung gerecht zu werden.
path.join()-Methode, die zum Zusammenfügen mehrerer Pfadfragmente zu einer vollständigen Pfadzeichenfolge verwendet wird
]
Es ist zu beachten, dass der zurückgegebene Wert string ist
//引入path模块 const path=require("path") //书写要拼接的路径 const pathStr=path.join('/a','/b/c','../','./d','e') console.log(pathStr)
Mit der Methode path.basename() können Sie den letzten Teil des Pfads abrufen. Diese Methode wird häufig verwendet, um den Dateinamen im Pfad zu erhalten.
Pfad erforderlicher Parameter, eine Zeichenfolge Stellt einen Pfad dar
Optionaler Parameter, der die Dateierweiterung darstellt
const path=require("path") const fpath='./a/b/c/index.html' var fullname=path.basename(fpath) console.log(fullname) //获取指定后缀的文件名 const namepath=path.basename(fpath,'.html') console.log(namepath)
2.3 path.extname()
path.extname() wird zum Abrufen verwendet die Dateierweiterung im Pfad Das Format des Namens
path erforderlicher Parameter, eine Zeichenfolge, die einen Pfad darstellt
const path=require("path") const fpath='./a/b/c/d/index.html' const ftext =path.extname(fpath) console.log(ftext)
3 .Clock Case-Übungen
2 Lesen Sie die HTML-Dateien, die verarbeitet werden müssen.3. Passen Sie die Methode „resolveCSS“ an, um die index.css-Stildatei zu schreiben.
4. Passen Sie die Methode „resolveJS“ an, um die Skriptdatei „index.js“ zu schreiben. 5. Passen Sie die Methode „resolveHTML“ an, um den Index zu schreiben. html-Datei
3.1.1 Schritt 1 – Importieren Sie die erforderlichen Module und erstellen Sie reguläre Ausdrücke
const path=require('path') const fs=require('fs') const regStyle=/<style>[\s\S]*<\/style>/ const scriptruler=/<script>[\s\S]*<\/script>/ //需要读取的文件 fs.readFile(path.join(__dirname,'/static/index.html'),'utf-8',function(err,dateStr){ if(err){ return console.log("读取失败") } resolveCSS(dateStr) resolveHTML(dateStr) resolveJS (dateStr) })
function resolveCSS(htmlStr){ 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){ if(err) return console.log("导入失败"+err.message) console.log("ojbk") }) } function resolveJS(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){ if(err) return console.log("导入失败"+err.message) console.log("ojbk") }) } function resolveHTML(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){ if(err) return console.log("导入失败"+err.message) console.log("ojbk") }) }
<style></style>
和<script></script>
Aber da die anfängliche index.html den gesamten Code enthält und dann
der Speicherort beim Teilen der Stile immer noch derselbe ist, bleibt der endgültige Index unverändert. Der Code von .html bleibt unverändert
Weitere Informationen zu Knoten finden Sie unter: nodejs-Tutorial!
Das obige ist der detaillierte Inhalt vonEine kurze Analyse des Pfadmoduls des Knotens. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!