如何在多个文件中创建JS对象

时间:2012-04-21 04:35:26

标签: javascript ruby-on-rails file scope coffeescript

我是一名使用Rails应用程序的js noob。我在我的一个javascript文件中定义了一个有用的JS函数,我希望它可以在其他文件中调用。但事实并非如此。以下是我的情况的简化示例...请注意,我使用的是CoffeeScript(但AFAIK应该没有区别):

#file: app/assets/javascripts/foos.js.coffee
testFoo: ->
  alert 'Foo'

#file: app/assets/javascripts/bars.js.coffee
jQuery ->
  testFoo()

这不起作用,在控制台中我得到:testFoo is not defined

两个文件都包含在页面中,如果我将警报或控制台日志放入其中任何一个页面,则按预期响应。我觉得我必须忽略一些残酷的东西......这是什么?

1 个答案:

答案 0 :(得分:2)

总之试试这个:

root = exports ? this
root.foo = -> alert 'Foo'