gpt4 book ai didi

ruby-on-rails-3 - Rails 3.1 Assets 管道和手动订购的 Javascript 需要

转载 作者:行者123 更新时间:2023-12-03 05:59:28 25 4
gpt4 key购买 nike

我正在尝试将现有应用程序转换为新的 3.1 Assets 管道布局,并希望包含许多必须按特定顺序排列的供应商文件(underscore.js 和backbone 是一对)。因此,我不能只使用 = require_tree . 来提取我的供应商文件(无需使用前缀重命名每个文件。恶心)。

以下内容位于我的 app/assets/javascripts/application.js 文件中:

//= require modernizr-1.7//= require jquery-1.6.1//= require underscore-1.1.5//= require backbone-0.3.3//= require_tree .

我已经尝试了带/不带扩展、带/不带 require_tree 和带/不带相对路径的每种组合,但没有任何效果。我的所有供应商文件都位于 /vendor/assets/javascripts/ 中。

我觉得我很愚蠢,因为这似乎是一个如此明显的用例,(包括按顺序排列的特定文件在 JS 中很常见,不是吗?)我一定在做一些白痴的事情?

最佳答案

您有两种可能的结构:第一种和第二种。通过以下两个示例,您将在 /assets/externals.js 公开一个包。您可以 javascript_include_tag 此包,但也可以在 application.js 文件中需要它。

第一个

vendor/
├── assets
│ ├── javascripts
│ │ ├── externals.js
│ │ ├── modernizr-1.7.js
│ │ └── underscore-1.1.6.js
│ └── stylesheets
└── plugins

文件 externals.js 包含:

//= require ./underscore-1.1.6.js
//= require ./modernizr-1.7.js

第二个

vendor/
├── assets
│ ├── javascripts
│ │ └── externals
│ │ ├── index.js
│ │ ├── modernizr-1.7.js
│ │ └── underscore-1.1.6.js
│ └── stylesheets
└── plugins

文件index.js包含:

//= require ./underscore-1.1.6.js
//= require ./modernizr-1.7.js

关于ruby-on-rails-3 - Rails 3.1 Assets 管道和手动订购的 Javascript 需要,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6149961/

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