これはかなり頻繁に実行される問題で、これを処理する正しい方法を発見したいと考えていました。ES6の循環依存性
parent.js:
export default {
x: 1
}
a.js:
import parent from 'parent.js'
export default parent.extend(a, { title: 'a' })
b.js:
だから私はこのようなセットアップを持っています
import parent from 'parent.js'
export default parent.extend(b, { title: 'b' })
クール、今は子供がいます。 しかし、オブジェクトがまたはbのインスタンスであるかどうかをチェックするparent.jsの関数を持っていたいと思っています。
だから私はこれを行う可能性があります:
parent.js:
import a from 'a'
import b from 'b'
export default {
x: 1,
checkType (obj) {
if (obj instanceof a) {
return 'a'
} else if (obj instanceof b) {
return 'b'
}
}
}
まあ今では、循環依存関係です。これを処理するエレガントな方法はありますか?
「parent.extend」とは何ですか?そして、 'instanceof'はそこでどのように動作しますか? 「新」ですか? – elclanrs
申し訳ありませんが、より明確になっているはずです。私は、簡潔にするために何らかのバックボーン風のプロトタイプ継承を想定しています。 – Hud
'checkType'はメインの親ファイルにある必要がありますか?あなたが別のファイルに置くと、これが解決されるようです。 – loganfsmyth