Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/398.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Rails资源管道中创建公共javascript函数_Javascript_Ruby On Rails_Asset Pipeline - Fatal编程技术网

在Rails资源管道中创建公共javascript函数

在Rails资源管道中创建公共javascript函数,javascript,ruby-on-rails,asset-pipeline,Javascript,Ruby On Rails,Asset Pipeline,我有一个Rails应用程序,具有以下javascript资产结构 |- app |- assets |- javascripts |- articles - index.js - show.js - application.js application.js文件似乎是所有文件的清单 //= require jquery //= require jquery_ujs //= require react //= require r

我有一个Rails应用程序,具有以下javascript资产结构

|- 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

我该如何创建一个带有如下公共/共享函数的公共JS文件?具体来说,应该在哪里创建文件,以及如何将其合并到清单中?以及在编制生产中的资产时如何编制


谢谢

您可以创建名为
common.js
的新文件,并在清单文件中的
index.js
show.js
之前需要它

app/assets/javascripts/common.js

function foo() {
  // do cool stuff here
}
//= require jquery
//= require jquery_ujs
//= require react
//= require react_ujs
//= require common
//= require_tree .
app/assets/javascripts/application.js

function foo() {
  // do cool stuff here
}
//= require jquery
//= require jquery_ujs
//= require react
//= require react_ujs
//= require common
//= require_tree .
资产预编译的顺序将遵循清单文件的顺序