请假设 main.js 模块导入了一组函数,这些函数是 main.js 注册的事件监听器的事件处理程序;并且,当调用导入的处理函数时,main.js 中的对象(未导出到其他模块)将作为这些函数中的参数传递,并且这些函数会尝试更改传递对象中的属性值。
当我测试它时,对象(随后在 main.js 中使用时)反映了在其他模块中所做的更改。
模块之间的对象可以依赖引用传递吗?或者这些对象必须从 main.js 导出并由其他模块导入吗?
谢谢你。
const
并使用 Object.assign
更新。这样您就可以确保所有对象都是真实的,并且不会与对象引用混淆。所以基本上,如果你关心封装,你的模块中应该有一个稳定的私有未引用(非共享)对象。