Я создаю веб-приложение MVC с интенсивным использованием загруженных ajax частичных представлений, содержащих jQGrids и javascripts. Многие частичные представления содержат только 2 тега div, а остальные - javascripts.
Использование тегов скрипта делает общую структуру страницы намного более логичной для меня, потому что javascripts - это содержимое страницы, как я ее вижу.
Однако есть также небольшие служебные функции, такие как функции форматирования, , используемые jQGrid, и я начинаю видеть растущий риск того, что скрипты с одинаковыми именами выполняют почти идентичные задачи.
Пример функции форматирования:
function primaryRoleFormatter(cellvalue, options, rowObject) {
switch (cellvalue) {
case "1":
return "<%= Resource.PRIMARY %>";
default:
break;
}
return "";
};
Сначала я считал функции форматирования принадлежащими ближайшей сетке, тем более что могут существовать другие сетки, имеющие функцию форматирования с тем же именем, но с некоторыми небольшими различиями в коде.
Я загружаю две или более сеток одновременно, кажется, что javascript достаточно умен, чтобы использовать сценарий, определенный в текущем блоке сценариев, если есть конфликт имен, так что нет никаких проблем, кроме придирчивых, " лучший способ сделать это? ".
Есть также скрипты для ajax-загрузки и отображения диалогов jQuery из действий сетки. Я думаю, что со временем сценарии будут складываться.
Должен ли я просто хранить сценарии там, где они используются, или я должен попытаться создать какую-нибудь библиотеку сценариев?
Если мне нужно переместить их в файлы сценариев, каков разумный способ разделения функций (имен, классов, файлов ...)?
Если я уберу их, будут ли они считаться более ненавязчивыми, поскольку страница такого типа уже загружена самим ajax и состоит из 95% javascripts?
Я понимаю, что есть похожих вопросов, но я не нашел подходящего ответа. Если с этим возникнет проблема, я ее удалю.