Wenn Sie Browserify verwenden, sollten Sie Gulp werden. In Ihren Stringify-Transformationsoptionen sollten Sie ein benutzerdefiniertes minifyOptions-Objekt angeben. Es gibt eine Option namens ignoreCustomComments
, in der Sie ein Array von Regex angeben können, das vom Entfernen ausgeschlossen werden soll.
browserify({
entries: 'index.js', extensions: ['.js'], watch: config.watching
})
.transform(babelify, {presets: ['es2015']})
.transform(stringify, {
appliesTo: {includeExtensions: ['.html']},
minify: true,
minifyOptions: {
ignoreCustomComments: [/^(\s*ko)/, /^(\s*\/ko)/]
}
})
[/^(\s*ko)/, /^(\s*\/ko)/]
alle Kommentare halten, die Leerzeichen haben dann die ‚ko‘ oder ‚/ ko‘ Kommentar zu binden. Wenn Sie jedoch minifyOptions auf ein neues Objekt setzen, werden alle Standardeinstellungen überschrieben: undefined
; Daher müssen Sie diese jetzt angeben. Diese können here
Verwendung finden:
<!-- Will be removed -->
<!-- ko if: true -->
<h4>This will be shown</h4>
<!-- /ko -->
<!-- ko if: false -->
<h4>This will NOT be shown</h4>
<!-- /ko -->
https://www.npmjs.com/package/stringify#minification – user3297291