下面的代码片段会在每次导入时生成新实例吗?
// 1st implementation
class ConnectionManager {
...
}
export default new ConnectionManager();
// 2nd implementation
class ConnectionManager {
...
}
const connectionManager = new ConnectionManager();
export default connectionManager;
如果是,我怎样才能在每次导入中获得相同的实例?
最佳答案
ES6 模块遵循单实例模式。也就是说,在加载模块时创建实例。
Here是一篇关于它的文章。
// File: yolo.js class Yolo {} export let yolo = new Yolo(); // File: laser.js import { yolo } from "./yolo.js"; // yolo is a single instance of Yolo class // File: cat.js import { yolo } from "./yolo.js"; // same yolo as in laster.js
关于javascript - 默认导出类的新实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57049953/