Я понимаю аргументы, лежащие в основе рельсов 3.1: мы собираем все JS в аккуратном, кэшируемом файле для повышения производительности. Мы очень хотим этого.
Однако загрузка всех означает также, что мы должны быть очень осторожны, чтобы мы не использовали определенный ID или класс на нескольких страницах, если у нас есть JS. Или же JS будет запускаться на обеих страницах, поскольку он всегда загружается.
Теперь мы хотим достичь следующего:
* мы хотим сохранить все в одном JS файле (мы знаем, как мы можем загружать файлы по отдельности, просто не хотим этого)
* мы хотим, чтобы пространство имен помещало JS в каждый controller_name.js
, поэтому оно загружается только при инициализации соответствующего пространства имен
* мы хотим инициализировать соответствующее пространство имен, читая текущий контроллер, скажем, атрибут data в теге <body>
нашего макета
Проблема заключается в следующем: у нас нет хорошей идеи, как реализовать в JS. В частности, как мы должны пропустить пространство JS, а затем динамически инициализировать его на основе содержимого HTML-тега.
Любая помощь очень ценится!