【问题标题】:Using Rails, Call JavaScript function in another js file使用 Rails,在另一个 js 文件中调用 JavaScript 函数
【发布时间】:2017-02-01 02:21:19
【问题描述】:

这可能是一个问题,我什至不知道要寻找什么,从而重复了一个问题。如果是这样,请链接正确的页面,我会羞愧地跑到角落!提前致谢!

之前:我只是在运行一个带有index.html 和两个file_name.js 文件的游戏,并将它们与jQuery 一起拉入脑海。

在我的旧 HTML 文件中:(这有效)我有一个 game.js 文件(在 clickkeyup 命令上准备好文档)和一个 gamelogic.js文件(管理所有游戏逻辑)

我的旧代码index.html 文件中的代码

<script src="https://code.jquery.com/jquery........."></script>
<script src="js/gamelogic.js"></script>
<script src="js/game.js"></script>

现在
(将游戏转移到 Rails)我在 Rails 4 应用程序中,搭建了一个游戏模型。

app/assets/javascripts 文件中创建了两个名称相似的新 .js 文件

问题:我知道这两个文件都在加载,因为我可以从两者中console.log("foo")。而且我知道我所有的功能都可以工作,因为当所有代码都合并到一个文件中时,所有功能都可以使用。

我想将它们保留为两个不同的文件,因为文档准备部分已经有点长,逻辑部分也是如此。

下面是目标,在主游戏文件中调用一个逻辑函数。

文件game.js

$(document).ready(function() {logicFunction();};

文件gamelogic.js

function logicFunction(){console.log("BAR")}

只是说明:这不是用于生产或最佳实践,这是为了了解 Rails 的来龙去脉,以及可以做什么和不可以做什么。我怀疑我的代码“应该”被拆分,但是我很好奇它是否可能。一旦获得功能,我还将转换为咖啡。

【问题讨论】:

    标签: javascript ruby-on-rails function ruby-on-rails-4 scope


    【解决方案1】:

    您的上述问题的详细解释在以下链接中。请查收

    How to include js file in another js file?

    【讨论】:

    • 感谢您的回复,因为这是在 rails 文件中,所以我对链接中提出的想法有一些问题。 (这可能是由于我的无知!)但是我知道这两个文件都被加载到页面中,因为我看到控制台从这两个文件中获取日志。但是我不能从另一个调用函数,就像我在我非常简单的应用程序示例中一样。如果您对将链接转换为 Rails 应用程序上下文有任何见解,我非常乐意听到!不管怎样,谢谢你! 编辑:我认为链接中的方法会导致 js 文件加载两次。
    • 如何在application.js中添加js文件?我的意思是顺序。你是先加载gamelogic.js文件再加载game.js吗?
    • 很好的问题,我不确定,因为它是自动添加的导轨,所以您不要将它输入到布局文件的头部。 App/assets/javascript 文件中的所有文件都已加载,就像每个 rails 应用程序一样。
    • 你能在 application.js 中添加这两个文件的序列吗? //需要游戏逻辑 //需要游戏 //需要 .在 application.js 中,只是为了覆盖 rails 应用程序采用的默认顺序。
    猜你喜欢
    • 2014-11-15
    • 2017-11-28
    • 1970-01-01
    • 2017-08-24
    • 1970-01-01
    • 2013-01-23
    • 1970-01-01
    • 2019-01-16
    • 2021-11-20
    相关资源
    最近更新 更多