首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Rails 3.1资产管道和手动订购的Javascript需求

Rails 3.1资产管道和手动订购的Javascript需求
EN

Stack Overflow用户
提问于 2018-03-26 05:18:27
回答 2查看 0关注 0票数 0

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

以下是我的app/assets/javascripts/application.js文件中:

代码语言:javascript
复制
// =需要modernizr-1.7
// =需要jquery-1.6.1
// =需要下划线-1.1.5
// =需要backbone-0.3.3
// = require_tree。

我已经尝试了带有/带外扩展的每个组合,带/带出require_tree和带/不带相对路径,并且没有任何效果。我所有的供应商文件都在/vendor/assets/javascripts/

我觉得自己很愚蠢,因为这看起来像是一个明显的用例,(包括通过命令命名的特定文件对JS来说很常见,不是吗?),我必须做一些愚蠢的事情?

EN

回答 2

Stack Overflow用户

发布于 2018-03-26 13:57:48

您可以按特定顺序要求每个文件,然后添加:

代码语言:javascript
复制
//= require_self

代替:

代码语言:javascript
复制
//= require_tree .
票数 0
EN

Stack Overflow用户

发布于 2018-03-26 15:02:51

你有两种可能的结构:第一种和第二种。通过以下两个示例,您可以看到一个包/assets/externals.js。你可以使用javascript_include_tag这个软件包,但你也可以在你的application.js文件中使用它。

第一个

代码语言:javascript
复制
vendor/
├── assets
│   ├── javascripts
│   │   ├── externals.js
│   │   ├── modernizr-1.7.js
│   │   └── underscore-1.1.6.js
│   └── stylesheets
└── plugins

该文件externals.js包含:

代码语言:javascript
复制
//= require ./underscore-1.1.6.js
//= require ./modernizr-1.7.js

第二个

代码语言:javascript
复制
vendor/
├── assets
│   ├── javascripts
│   │   └── externals
│   │       ├── index.js
│   │       ├── modernizr-1.7.js
│   │       └── underscore-1.1.6.js
│   └── stylesheets
└── plugins

该文件index.js包含:

代码语言:javascript
复制
//= require ./underscore-1.1.6.js
//= require ./modernizr-1.7.js
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/-100007784

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档