0
我們有循環依賴關係結構,應該是精細的邏輯。 Light imports導入導入Light的NodeManager的Node。當運行代碼,我們得到以下循環依賴關係超級表達式必須爲空或函數
"Super expression must either be null or a function"
節點管理器
// in NodeManager.js
import Light from '../../Light.js'
class NodeManager {
static _instance;
static getInstance() {
if(NodeManager._instance === undefined) {
NodeManager._instance = new NodeManager();
}
return NodeManager._instance;
}
...
addNode(node){
...
if(node instanceOf Light){
...
}
...
}
}
節點
// in Node.js
import NodeManager from '../../NodeManager.js'
class Node {
constructor() {
...
NodeManager.instance().addNode(this);
...
}
}
光
// in Light.js
import Node from '../../Node.js'
class Light extends Node {
constructor() {
super();
...
}
}
出於某種原因,節點的光導入未因此Light.j工作當調用super時拋出錯誤。我不確定如何解決這個問題。任何幫助表示讚賞。
不,我叫超級爲了簡潔起見,我只是把它放在外面。 –