所以我试图将我的代码变成可读的形式,但偶然发现了一个有点恼人的问题。
所以我想将一个类外包到一个文件中,“需要”它,然后在主文件中写回调函数以提高可读性。但是外包文件中的函数无法访问回调函数。这是简化的问题:
file_a.js
function test_a(){
return "this is A"
}
var test_b = require('./lib/file_b.js').test_b
console.log(test_b())
file_b.js
function test_b(){
return test_a()
}
exports.test_b = test_b
我希望有人能告诉我如何解决这个问题:) 编辑:此代码适用于firefox插件!
答案 0 :(得分:0)
test_a
函数必须全局定义:
test_a = function(){
return "this is A"
}
var test_b = require('./lib/file_b.js').test_b
console.log(test_b())
此外,您必须在test_b
函数中返回一些内容:
function test_b(){
return test_a()
}
exports.test_b = test_b
然后你会有这样的输出:
这是A
答案 1 :(得分:0)
您可以在同一个HTML文件中单独加载两个js文件。
然后,你所引用的任何引用页面上加载的其他文件的代码都应该在window.onload调用中(或者使用jQuery $(document).ready),这样它只在两个文件可用时运行在页面上。