、javascript es6のStaticメソッドでは何が起こっていますか?この私のコードで
import A from './A'
import B from './B'
export default class App extends React.Component{
constructor(){
console.log(B.getInstance()); // Why A.getInstance() got called ???
}
}
A.js(B.jsは同じである)
export default class A extends React.Component{
static instance = null;
static getInstance(){
return A.constructor.instance;
}
componentWillMount(){
A.constructor.instance = this;
}
}
両方私のクラスA及びB 'は、静的のgetInstance()メソッド' を有します。 ここでは、私は 'Bクラス'を呼び出しましたが、AのgetInstance()が呼び出されました。何が起きてる?
静的メソッドに同じメソッド名を使用しないでください。
ありがとうございました。
編集
誤って質問を投稿することがあります。 私の質問が何であるかを明確にするために新しい質問を投稿しました。ありがとう。
The name of static method in javascript should not be duplicated? (on React Native)
より完全な例を提供してください。 [mcve] – TheGiantBeast
を参照して、AとBのコードを提供できますか? –
A.jsとB.jsは同じ内容なので、クラスを複数回定義しているようです。 –