Как запретить Closure Compiler переименовывать какое-либо свойство или метод определенного объекта? - PullRequest
0 голосов
/ 02 сентября 2018

Я работаю с огромной сторонней библиотекой ( Babylon JS ), которая будет обслуживаться из собственного CDN и не может быть включена в мой прогон Closure Compiler.

Библиотека содержит один объект и все, что определено как его части.

У него нет файла externs, поэтому я начал его писать, но он быстро растет. Было бы проще просто сказать, чтобы Closure Compiler не искажал какие-либо свойства, которые я устанавливаю, в том числе те, которые я устанавливаю для объектов, созданных конструкторами объекта.

EDIT:

Добавлено название библиотеки.

1 Ответ

0 голосов
/ 04 сентября 2018

Компилятор Closure не имеет функции, которая позволяла бы вам сказать «не переименовывать любое свойство для этого объекта», кроме как полностью отключить переименование свойства. Общая идея заключается в том, что «непоправимому объекту» будет очень легко просочиться в свободно вводимое значение («unknown», Object и т. Д.) И отключить переименование для всей программы. И это затруднит поддержание ожидаемой оптимизации для более крупных проектов. Тем не менее, это, безусловно, то, что я хотел бы, чтобы команда пересмотрела в какой-то момент.

...