Heim >Web-Frontend >js-Tutorial >So komprimieren und führen Sie JS-Dateien im Knoten zusammen
Dieses Mal zeige ich Ihnen, wie Sie JS-Dateien im Knoten komprimieren und zusammenführen. Was sind die Vorsichtsmaßnahmen für das Komprimieren und Zusammenführen von JS-Dateien im Knoten?
Die neueste Version von UglifyJS ist jetzt 2.8.13. Seine Hauptfunktion ist die JS-Komprimierung und -Zusammenführung. Gehen Sie direkt zum Tutorial unten:
Installation:
<span style="font-size:18px;color:#006600;">npm install uglify-js -g</span>
Installieren Sie uglifyjs als globale Variable, damit wir es überall verwenden können.
<span style="color:#006600;">下面是shell命令的中文解释: * source-map [string],生成source map文件。 * –source-map-root [string], 指定生成source map的源文件位置。 * –source-map-url [string], 指定source map的网站访问地址。 * –source-map-include-sources,设置源文件被包含到source map中。 * –in-source-map,自定义source map,用于其他工具生成的source map。 * –screw-ie8, 用于生成完全兼容IE6-8的代码。 * –expr, 解析一个表达式或JSON。 * -p, –prefix [string], 跳过原始文件名的前缀部分,用于指定源文件、source map和输出文件的相对路径。 * -o, –output [string], 输出到文件。 * -b, –beautify [string], 输出带格式化的文件。 * -m, –mangle [string], 输出变量名替换后的文件。 * -r, –reserved [string], 保留变量名,排除mangle过程。 * -c, –compress [string], 输出压缩后的文件。 * -d, –define [string], 全局定义。 * -e, –enclose [string], 把所有代码合并到一个函数中,并提供一个可配置的参数列表。 * –comments [string], 增加注释参数,如@license、@preserve。 * –preamble [string], 增加注释描述。 * –stats, 显示运行状态。 * –acorn, 用Acorn做解析。 * –spidermonkey, 解析SpiderMonkey格式的文件,如JSON。 * –self, 把UglifyJS2做为依赖库一起打包。 * –wrap, 把所有代码合并到一个函数中。 * –export-all, 和–wrap一起使用,自动输出到全局环境。 * –lint, 显示环境的异常信息。 * -v, –verbose, 打印运行日志详细。 * -V, –version, 打印版本号。 * –noerr, 忽略错误命令行参数。</span>
# So verwenden Sie UglifyJS2
> Es gibt zwei Möglichkeiten, UglifyJS2 zu verwenden
1 Befehlsaufruf
2. API-Aufrufe
Shell-Befehl:
Führen Sie die beiden JS-Dateien start.js und test.js
zusammen und komprimieren Sie sie~> uglifyjs start.js test.js -o new.min.js --source-map new.min.js.map
API-Aufruf:
var fs = require('fs'); var uglifyjs = require("uglify-js"); var result = uglifyjs.minify("../test.js",{ mangle:false });
Minify ist eine grundlegende Kernmethode oben. Schauen wir uns diese Methode separat an.
Dies ist eine sehr intelligente Methode mit insgesamt 2 Parametern.
Der erste Parameter*.
Der erste Parameter kann eine Zeichenfolge, ein Pfad oder ein Pfadarray sein
1. Der Zeichenfolgenparameter
ist das, was wir schreiben. Der Javascript-Code kann direkt als String-Parameter-Parameterfunktion verwendet werden, benötigt jedoch einen zweiten Parameter, um der Funktion mitzuteilen, dass es sich um den ersten Parameter über der Javascript-Quellzeichenfolge
var result = uglifyjs.minify("var fun=function(){ alert('itKingOne博客');};",{ mangle:false, fromString:true, });Der Javascript-Quellcode wird übergeben. Der formString: true im zweiten Parameter teilt der Minify-Funktion mit, dass der vorherige Parameter der Javascript-Quellcode ist, der komprimiert werden muss path
Dies ist eine von der Funktion standardmäßig unterstützte Methode. Sie können einem zu komprimierenden JavaScript-Dateipfad direkt einen einzelnen Parameter zuweisen 🎜>Die obige Funktion wird in meinem übergeordneten Verzeichnis ausgeführt. Wenn ein Parameter standardmäßig verwendet wird, gibt er den Dateipfad an
Das Array gibt mehrere Pfade anvar result = uglifyjs.minify("../test.js");kann einen Parameter haben, aber dieser Der Parameter ist ein Array ['Pfad 1', 'Pfad 2', 'Pfad 3']. Ähnlich wie hier ist das Ergebnis, dass das gesamte Javascript in Der obige Pfad wird komprimiert und an das Ergebnisobjekt zurückgegeben. Auf den Ergebnisrückgabewert werden wir später separat eingehen.
Zweiter Parameter*
Parameterbeschreibungvar result = uglifyjs.minify([ "../test.js", "../mian.js"]);romString-Attribut (Standardwert „false“) gibt an, dass die Zeichenfolge im ersten Parameter Javascript-Quellcode ist.
Das Mangle-Attribut ist standardmäßig auf „true“ festgelegt. Dies bedeutet, dass keine verschleierte Komprimierung durchgeführt wird
Die Attribute width und max-line-len folgen den Anweisungen, hier sollte sich auf die Länge der komprimierten Datei beziehenoutSourceMap-Attribut wird verwendet, um den Wert des Dateiattributs nach der Funktion anzugeben Rückgabewert result.map string wird in Object konvertiertsourceRoot-Attribut wird verwendet, um die Funktion anzugeben Rückgabewert result.map string nach der Konvertierung in Object sourceRoot Der Wert des Attributs Rückgabewert result *Das Rückgabewertergebnis ist ein Objekt. Das Codeattribut entspricht dem komprimierten Skript.Ich glaube, Sie haben den Fall in diesem Artikel gelesen. Sie beherrschen die Methode Spannende Informationen, bitte beachten Sie andere verwandte Artikel auf der chinesischen PHP-Website!
Empfohlene Lektüre:
{"code":"这里是压缩后的 javascript 脚本","map":null}
So ändern Sie den Wert in Vue-Anfragedaten
Wie Vue und Vue-i18n den Hintergrund implementieren Daten Mehrsprachige Umschaltung
Das obige ist der detaillierte Inhalt vonSo komprimieren und führen Sie JS-Dateien im Knoten zusammen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!