¿Hay alguna manera de no alterar solo un nombre de función? Un comentario en el código sería más fácil, pero supongo que esto podría hacerse especificando un "nameCache" personalizado. Pero no sé cómo funciona eso.
No pude resolver esto, pero ya tenía el nombre de la función, así que almacené el nombre de la función en la página web en un atributo que pude encontrar más tarde con JavaScript. p.ej
function bob() { console.log('hello'); } document.querySelector('#myid').setAttribute('data-function-name', bob.name); <span id="myid">for example make this style="display:none;"</span>Para evitar que terser altere un símbolo en particular, debe agregarlo a la lista reservada de terser. Esto se puede hacer en su archivo de opciones de terser:
{ "mangle": { "properties": { "reserved": ["symbolToNotMangle", "anotherSymbolToPreserve"] } } }Si aún no está usando un archivo de opciones de terser , lo guardaría en (por ejemplo) terser_options.json y le diría a terser que lo use así:
terser ... --config-file terser_options.jsonTambién puede enumerar los símbolos reservados en la línea de comando si lo prefiere:
terser ... -m reserved=['symbolToNotMangle','anotherSymbolToPreserve']