У меня довольно много этой ошибки:
AngularJS ngSanitize Error
короткая версия: "нижний регистр не является функцией".
Хотя в моем приложении AngularJS применяется до версии 1.4.9, мы не применяем angular-sanitize, поэтому оно разрешается до 1.7.0, и в этой версии функции строчных букв AngularJS больше не существует, что приводит к ошибке.
Возможно, принудительное использование angular-sanitize для исправленной версии исправит это, но я хочу выйти за рамки исправления и понять, что является причиной проблемы и почему, потому что я обнаружил несколько несоответствий.
AngularJS форсируется до 1,4,9. Папка bower-components содержит эту версию, папка сборки после компиляции также содержит эту версию, панель разработчика в Chrome показывает, что только эта версия загружена. Эта версия имеет строчный метод.
Angular-sanitize имеет угловой 1.7.0 в качестве зависимости, но он никогда не загружается, никогда. Ни в одной папке или подпапке во всем проекте, ни при компиляции, ни из Chrome. Поэтому я думаю, что единственный angular.js , к которому у него есть доступ, - это 1.4.9, который имеет метод строчных букв.
Я не совсем понимаю, почему тогда появляется ошибка "нижний регистр не является функцией", если единственный доступный angular.js все еще имеет этот метод. Также я не понимаю, почему angular-sanitize 1.7.0, требующая angular 1.7.0, использует несуществующие методы на AngularJS 1.7.0 (ошибка разработчиков Angular? Но мне трудно в это поверить.)
Возможно, sanitize как-то скачивает и получает доступ к angular 1.7.0, но я хотел бы знать, как это сделать. Просто из любопытства. А также, чтобы подтвердить, является ли это ошибкой разработчика или я что-то упустил.