Maison > interface Web > js tutoriel > Comment utiliser UglifyJS pour compresser et fusionner des fichiers JS sous nœud

Comment utiliser UglifyJS pour compresser et fusionner des fichiers JS sous nœud

小云云
Libérer: 2018-03-09 09:36:17
original
1546 Les gens l'ont consulté

Cet article partage principalement avec vous une méthode d'utilisation d'UglifyJS pour compresser et fusionner des fichiers JS sous nœud. La dernière version d'UglifyJS est désormais la 2.8.13. Sa fonction principale est la compression et la fusion JS. Passons directement au tutoriel.

Installation :

<span style="font-size:18px;color:#006600;">npm install uglify-js -g</span>
Copier après la connexion

Installez uglifyjs en tant que variable globale afin que nous puissions l'utiliser n'importe où.

<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>
Copier après la connexion

# Comment utiliser UglifyJS2

> Il existe 2 façons d'utiliser UglifyJS2

1.

Commande Shell :

Fusionner et compresser les deux fichiers JS start.js et test.js

~> .js --source-map new.min.js.map

Appel API :

Une méthode de base de base minify ci-dessus, regardons cette méthode séparément
var fs = require('fs');
var uglifyjs = require("uglify-js");
var result = uglifyjs.minify("../test.js",{
 mangle:false
});
Copier après la connexion

C'est une méthode très intelligente, avec un total de 2 paramètres

Le premier paramètre*

Le premier paramètre peut être une chaîne, un chemin ou un tableau de chemins

1. Le paramètre de chaîne

est le code javascript que nous avons écrit. Il peut être directement utilisé comme fonction de paramètre de paramètre de chaîne, mais un deuxième paramètre est nécessaire pour indiquer à la fonction qu'il s'agit de la chaîne du code source javascript

Le premier paramètre ci-dessus est passé dans le code source javascript, et le deuxième paramètre formString: true indique à la fonction minify que le paramètre précédent est le code source javascript qui doit être compressé.

var result = uglifyjs.minify("var fun=function(){ alert('itKingOne博客');};",{
 mangle:false,
 fromString:true,
});
Copier après la connexion
String path

Il s'agit d'une méthode prise en charge par la fonction par défaut. Vous pouvez directement donner un seul paramètre à un chemin de fichier javascript qui doit être compressé. Bien sûr, vous pouvez également utiliser 2 paramètres. >

La fonction ci-dessus est exécutée, Je vais compresser le test.js dans mon répertoire parent Lorsqu'un paramètre est utilisé par défaut, il indique le chemin du fichier

Le tableau spécifie plusieurs chemins
var result = uglifyjs.minify("../test.js");
Copier après la connexion

🎜>

peut avoir un paramètre, mais ce paramètre est un tableau ['Path 1', 'Path 2', 'Path 3'] De la même manière, le résultat est que tout le javascript du chemin ci-dessus est compressé et retourné à l'objet de résultat. Plus tard, nous parlerons de la valeur de retour du résultat séparément

Deuxième paramètre*

var result = uglifyjs.minify([ "../test.js", "../mian.js"]);
Copier après la connexion
Description du paramètre

attribut romString (false par défaut) Spécifie. que la chaîne dans le premier paramètre est du code source javascript

L'attribut Mangle est par défaut vrai ; lorsqu'il est spécifié comme faux, cela signifie que la compression obscurcie ne sera pas effectuée

width et max-line-. Les attributs len suivent les instructions, doivent ici faire référence à la longueur du fichier compressé.

L'attribut outSourceMap est utilisé pour spécifier la valeur de l'attribut de fichier après que la chaîne result.map de la valeur de retour de la fonction soit convertie en objet

L'attribut sourceRoot est utilisé pour spécifier la valeur de l'attribut sourceRoot après que la chaîne result.map de la valeur de retour de la fonction soit convertie en objet

Résultat de la valeur de retour *

Le résultat de la valeur de retour est un objet. L'attribut code correspond au script compressé

Recommandations associées :

{"code":"这里是压缩后的 javascript 脚本","map":null}
Copier après la connexion

JS Fusion des instances d'objet json

exemple php de fusion de requêtes js_PHP tutoriel

exemple php de fusion de requêtes js_PHP

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal