Javascript rails基本文件具有调用函数c的函数a,但c是在两个js文件中定义的。如何解决每页的此问题?

Javascript rails基本文件具有调用函数c的函数a,但c是在两个js文件中定义的。如何解决每页的此问题?,javascript,jquery,ruby-on-rails,Javascript,Jquery,Ruby On Rails,我创建了一个具有以下功能的应用程序_base.js: function drawLocations(canvas, blag, blah) { //do some stuff selectLocations(a_something, b_something); //do some stuff } 第1页:第1.js页 第2页:第2.js页 但是,在任何一个页面上调用drawLocations时,只调用页面_1.js中的selectLocations函数。我不确定我是否理

我创建了一个具有以下功能的应用程序_base.js:

function drawLocations(canvas, blag, blah) {
    //do some stuff
    selectLocations(a_something, b_something);
    //do some stuff
}
第1页:第1.js页

第2页:第2.js页

但是,在任何一个页面上调用drawLocations时,只调用页面_1.js中的selectLocations函数。我不确定我是否理解js中的作用域,但我非常确定它只是搜索函数,因为它都是全局作用域,所以它在第一次找到函数时执行

如何使其仅调用页面上调用drawLocations的selectLocations函数。我在这里问了几个问题,但找不到任何直接相关的问题


我对js很陌生。非常感谢您的帮助。

函数是js中的头等公民。我能够将selectLocations作为参数传递给drawLocations

drawLocations(..., selectLocations){
...
}

因此,在页面就绪页面上,只需将该页面的函数作为参数传递。

您确定在请求第2页的情况下不会加载页面_1.js吗?我不确定您的意思,但rails不是将所有内容微型化到一个文件中吗?所以所有的东西都装上了。现在全局范围内有2个函数,所以它选择第一个?
function selectLocations(a_something, b_something) {
    //set some selectors on Page 2
}

drawLocations(canvas, blag, blah); //here on page ready
drawLocations(..., selectLocations){
...
}