gpt4 book ai didi

ruby-on-rails-3.2 - 是否可以在管道中有条件地加载某些 JS Assets ?

转载 作者:行者123 更新时间:2023-12-02 05:07:39 25 4
gpt4 key购买 nike

我正在使用 Stripe 让用户订阅我的 Rails 3.2 应用程序。我有一个订阅模型,在 JS Assets 中我调用了 Stripe 对象。但我只在订阅过程的特殊布局文件中包含 Stripe javascript 文件。它不包含在我的主要应用程序布局中。

因此,如果我不在主应用程序布局模板中也包含 Stripe JS 文件,我当然会收到错误消息,因为 subscription.js.coffee 正在引用 Stripe。

除了我设置的特殊订阅模板,有没有办法不加载订阅 Assets ?

最佳答案

是的,您的 application.js list 文件中可能有 require_tree

这意味着您的所有 coffeescript 文件(包括 subscriptions.js.coffee)都包含在您的 application.js 中。

接下来您的布局中可能有一行与此类似的行:

<%= javascript_include_tag 'application' %>

这意味着您的应用程序 list 文件(包括 subscription.js.coffee 代码)包含在您的布局中。

解决方案是不要将这段代码包含在您的应用程序 list 文件中。

因此,在您的 application.js list 文件中,您可以不使用 require_tree,而是执行如下操作:

//= require jquery
//= require jquery_ujs
//= require posts
//= require comments

在 list 文件中,我假设您有其他布局,您可以包括这样的订阅。

//= require_jquery
//= require jquery_ujs
//= require subscriptions

请注意,postscomments 是示例。

关于ruby-on-rails-3.2 - 是否可以在管道中有条件地加载某些 JS Assets ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16039290/

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