我有一个具有以下javascript资产结构的Rails应用
|- app
|- assets
|- javascripts
|- articles
- index.js
- show.js
- application.js
application.js
文件似乎是所有文件的清单
//= require jquery
//= require jquery_ujs
//= require react
//= require react_ujs
//= require_tree .
假设我有一些通用的功能foo()
,希望可以从index.js
和show.js
进行全局访问
function foo() {
// do cool stuff here
}
我该如何创建具有此类通用/共享功能的通用JS文件?具体来说,应该在哪里创建文件以及如何将其合并到清单中?以及在编译生产中的资产时如何对其进行编译?
谢谢!
答案 0 :(得分:1)
您可以制作一个名为common.js
的新文件,并在清单文件中的index.js
和show.js
之前要求它
app / assets / javascripts / common.js
function foo() {
// do cool stuff here
}
app / assets / javascripts / application.js
//= require jquery
//= require jquery_ujs
//= require react
//= require react_ujs
//= require common
//= require_tree .
资产预编译的顺序将遵循清单文件的顺序。