Et l'eau tout le monde,
J'ai un petit souci avec les taskrunner (Webpack/Grunt) et le module uglify. Je viens de créer une librairie avec ses propres dépendances (la librairie peut fonctionner sans librairie externe (npm i -D unModule)). Au final, j'ai une class qui est une façade. Lorsque je minifies toute la librairie, j'obtiens un "min.js". Mais là où je suis coincé, j'essaie d'intancier la librairie depuis l'extérieur du fichier, j'obtiens le nom de la librairie en undefined. Pour illustrer mon propos, voici le code :
Voici la config de l'un des taskrunner que j'utilise :
Savez vous comment faire pour que le fichier min.js soit standalone ?
Merci de vos lumières
Modifié par niuxe (05 Feb 2019 - 18:15)
J'ai un petit souci avec les taskrunner (Webpack/Grunt) et le module uglify. Je viens de créer une librairie avec ses propres dépendances (la librairie peut fonctionner sans librairie externe (npm i -D unModule)). Au final, j'ai une class qui est une façade. Lorsque je minifies toute la librairie, j'obtiens un "min.js". Mais là où je suis coincé, j'essaie d'intancier la librairie depuis l'extérieur du fichier, j'obtiens le nom de la librairie en undefined. Pour illustrer mon propos, voici le code :
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<script src="min.js"></script>
<script>
let monInstance = new MonObjet(); //MonObjet undefined
</script>
</body>
</html>
Voici la config de l'un des taskrunner que j'utilise :
uglify: {
options: {
mangle: true,
compress: {
sequences: true,
dead_code: true,
conditionals: true,
booleans: true,
unused: true,
if_return: true,
join_vars: true,
drop_console: true
}
},
my_target: {
files: {
'../js/min.js': [
'js/app.js'
]
}
}
},
Savez vous comment faire pour que le fichier min.js soit standalone ?
Merci de vos lumières
Modifié par niuxe (05 Feb 2019 - 18:15)