Heim > Web-Frontend > js-Tutorial > Hauptteil

So komprimieren und führen Sie JS-Dateien im Knoten zusammen

php中世界最好的语言
Freigeben: 2018-03-28 15:22:05
Original
1855 Leute haben es durchsucht

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>
Nach dem Login kopieren

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>
Nach dem Login kopieren

# 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
});
Nach dem Login kopieren

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,
});
Nach dem Login kopieren
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 an
var result = uglifyjs.minify("../test.js");
Nach dem Login kopieren

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*

Parameterbeschreibung
var result = uglifyjs.minify([ "../test.js", "../mian.js"]);
Nach dem Login kopieren

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 beziehen

outSourceMap-Attribut wird verwendet, um den Wert des Dateiattributs nach der Funktion anzugeben Rückgabewert result.map string wird in Object konvertiert

sourceRoot-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}
Nach dem Login kopieren

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!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage