Рендерю все страницы для юзеров на сервере, так вот мне нужно минифицировать все html, css, и js. Но есть проблема, некоторые html содержат в себе так-же css и js. То-есть тот-же js для компонента может не идти отдельным файлом, а лежать в теле html.
Я пробовал html-minifer, однако он минифицирует всё, кроме js. Притом даже, если я в настройках укажу { minifyJS: true }
Вот пример того, как я использовал minify:
const minify = require('html-minifier').minify;
const template = `
<html>
<head>
<title>Some Title</title>
</head>
<body>
<h1>Hello World!</h1>
<style>
body {
background: black;
}
</style>
<script>
onload = () => {
alert('Hello World!')
}
</script>
</body>
</html>
`;
const response = minify(template, {
removeAttributeQuotes: true,
collapseWhitespace: true,
conservativeCollapse: false,
decodeEntities: true,
keepClosingSlash: false,
preserveLineBreaks: false,
preventAttributesEscapin: true,
processConditionalComments: true,
removeAttributeQuotes: true,
removeComments: true,
trimCustomFragments: true,
useShortDoctype: true,
minifyCSS: true,
minifyJS: true
});
console.log(response);
И вот что я получил в консоле:
Так-же я пробовал UglifyJS! Но получил следующие сообщение ошибки:
unexpected token: operator (<)
Насколько я понимаю - этот конфликт возникает на почве того, что я пытаюсь минифицировать js внутри html, а не отдельно лежащий js.
Так вот вопрос, какой модуль поможет мне минифицировать весь html включая css и js. При этом многие css, js не находятся в теле html, а некоторые присутствуют и это всё нужно как можно сильнее минифицировать.
Виртуальный выделенный сервер (VDS) становится отличным выбором
Подскажите, как можно добавить на музыкальный сайт прослушивание музыки таким образом, что бы при нажатии на песню открывалась либо новая...