Простой способ загрузить пользовательские файлы JavaScript на веб-странице? - PullRequest
1 голос
/ 07 апреля 2011

Я работаю над проектом, в котором Javascript выходит из-под контроля, поэтому я приложил все усилия, чтобы поместить каждый объект в отдельный файл (в пределах разумного ... Я иногда группирую связанные объекты и помещаю их водин файл, если они маленькие).

Одна вещь, с которой у меня, честно говоря, проблемы, это управление зависимостями этих объектов.Кажется, в Javascript нет способов включить / объявить зависимости ... и я, честно говоря, нахожу это действительно очень раздражающим.

Что еще хуже, я должен поместить эти зависимости в отдельные html-файлы, которые они используют,После того, как так много тегов сценариев появилось внизу многих страниц, это стало абсолютно болезненным для управления.Вот пример:

<script src="${base}/js/ui/autoCompleteWidget.js"></script>
<script src="${base}/js/pagelet/addStudentToStudyGroupForm.js"></script>
<script src="${base}/js/pagelet/studentListing.js"></script>
<script src="${base}/js/pages/studyGroups.js"></script>

Это достаточно плохо, потому что многие из первых зависимостей объявляются снова и снова, поскольку они необходимы на разных страницах.Хуже всего то, что приходится вводить еще одну зависимость где-то посередине в более поздний момент времени ... а затем приходится проходить через весь мой проект и вставлять один и тот же сценарий снова и снова на каждую страницу, где это необходимо.Поскольку при разметке HTML нет предупреждения о времени компиляции ... если я забуду сделать это на одной странице ... страница просто не будет работать.Что-то вроде этого трудно автоматически проверить, и у меня нет способа узнать, если я не проверю каждую страницу, использующую Javascript.

Мне было интересно ... Какой самый простой / самый безболезненный способ загрузки этих сценариев?Мол, какой стандартный способ сделать это, надежный, простой и т. Д.? * 10101

Спасибо

1 Ответ

1 голос
/ 07 апреля 2011

Возможно, вы захотите взглянуть на библиотеки, такие как http://requirejs.org/, которые могут облегчить некоторые проблемы в подобных ситуациях.

...