Я только недавно начал изучать RoR и обнаружил, что Prototype.js является библиотекой javascript по умолчанию, выходящей из коробки. Почему он использует эту библиотеку и почему не jQuery, Dojo, Mootools, ExtJS и т. Д.?Почему Ruby on Rails по умолчанию использует Prototype.js?
ответ
Это был выбор, сделанный около пяти лет назад, и в то время был в основном просто любимой структурой JS DHH. Rails 3 будет легче поддерживать коммутацию, но для рельсов 2 вы всегда можете использовать http://github.com/aaronchi/jrails для обмена в jQuery для прототипа.
ОБНОВЛЕНИЕ: Начиная с рельсов 3.1, он будет использовать jquery по умолчанию, а прототип станет доступен через драгоценный камень.
Как утверждает Мэтт Бриггс, прототип был 5 лет назад.
TBH, это был очень долгое время с тех пор, как я использовал встроенные помощники javascript. Я пишу свои приложения, используя ненавязчивые методы JS с jQuery, а не по умолчанию. Все, что вам нужно сделать, это удалить файлы по умолчанию и включить любую библиотеку, которую вы хотите в своем макете.
Rails 3 изменяет это ограничение, кстати, добавив крючки для ненавязчивого JS с любой библиотекой.
Если я правильно помню из прототипа & Писательская книга, она была первоначально частью Rails и теперь является побочным продуктом. Суть в том, чтобы заставить JavaScript выглядеть и действовать больше как Ruby.
На момент написания Прототип был не только современным, это была библиотека. Однако, если вы просто используете javascript_tag
, чтобы потребовать jQuery - он будет работать отлично, кроме ваших помощников rjs. Однако это меняется в Rails 3 благодаря влиянию Merb и, в частности, Yehuda Katz (одному, но не единственному из членов ядра Rails 3 Core, Merb и jQuery)
Очень круто, как сообщество управляет инфраструктурой Rails Теперь. После нескольких лет существования обязательной библиотеки JavaScript мы наконец получили свободу выбора любимых библиотек и инструментов: Rails 5.1: Loving JavaScript, ..