gpt4 book ai didi

ruby-on-rails-3.1 - 将 RequireJS 与 Rails 3.1 应用程序一起使用

转载 作者:行者123 更新时间:2023-12-03 10:36:02 26 4
gpt4 key购买 nike

问题

如果您在 Rails 3 (esp 3.1) 应用程序中使用过 RequireJS,那对您有什么帮助?我需要注意的任何配置技巧或其他问题?

背景

我正在考虑在 Rails 3.1 中基于 Sprockets 的 Assets 管道上使用 RequireJS,特别是用于 JavaScript 代码。对于这个选择,我有两个动机:

  • 我想为我的 JS 客户端代码利用 RequireJS 的模块管理。
  • 我想要一个可以跟随我的 JS 库代码进入其他上下文的预编译系统。令我惊讶的是,Asset Pipeline 预编译器是 Rails 的一部分,而不是 Sprockets 本身的一部分。

  • 感谢所有反馈,谢谢!

    最佳答案

    对于后代,这就是我谈到这个问题的地方:

  • RequireJS 提供了 Asynchronous Module Definition 的实现。 API。 RequireJS' Why AMD? page列出了您为什么要使用它的案例。
  • Sprockets 和 Rails 3 Asset Pipeline 允许对 JavaScript/CoffeeScript 代码进行简单的结构化,但不提供任何真正的模块支持。例如,在 Sprockets 中没有任何命名空间控制。
  • jQuery(从 1.7 开始)、Underscore、Dojo 和许多其他主要库都实现了 AMD 支持。其他几个主要的 JS 库似乎在近期水平上支持 AMD(例如 Backbone.js)。

  • 当然可以创建一个集成 RequireJS 的 Rails 应用程序。为了简化这个过程,我创建了 requirejs-rails gem on github ,通过 r.js 为基于 AMD 的代码进行简单的配置和 Assets 管道感知预编译.当前版本可通过以下方式获得:
    gem install requirejs-rails

    关于ruby-on-rails-3.1 - 将 RequireJS 与 Rails 3.1 应用程序一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7921445/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com