我真的只是想知道这是否是“正确”的做事方式,或者我是否缺少关于模块的东西;我们不使用节点,只使用浏览器,但也许这适用于两者。在page.js中我们有一个函数world(),我们需要一个模块(module.js)才能调用。导出world()并将其导入模块似乎不适合做事。
为什么不呢? page.js是js,只适用于一个html页面(page.html); world()操作page.html上的某些特定UI元素,并且不会在其他任何地方重复使用。 Module.js做了一些与ajax / server相关的工作;这是在很多其他html页面上完成的,所以当然我们将它作为一个易于重用的模块。
init()是真正的切入点。举例:
page.js
import mod from 'module.js'
function init() {
hello(); // print 'hello' to console
const options = {
// pass the 'world' function to module.js
functionParam: world,
// some other irrelevant options here
};
mod.print(options); // print 'world' to console
}
function hello() {
console.log('hello');
}
function world() {
console.log('world');
}
module.js
function print(options) {
// should call the world function, we should see 'world' logged to console
options.functionParam();
}
export default print;