मैं एक गेम लिख रहा हूं और जब खेल खत्म हो गया है, तो मैं इसे प्रारंभिक स्थिति में रीसेट करना चाहता हूं। मुझे इसके लिए दस्तावेज़ों में कोई सार्थक जानकारी नहीं मिली है, इसलिए मैं अपने गेम क्लास में रीसेट विधि जोड़ने के साथ खेल रहा हूं। सबसे पहले, मैं एक आधार वर्ग मैं बाद में विस्तार कर सकता बनाने, लेकिन घटक नाम के लिए एक चर का उपयोग कर की उम्मीद में पालन कर रही प्रयास विफल रहता है:क्या ईएस 6 कक्षाओं का उपयोग प्रारंभिक स्थिति में प्रतिक्रिया घटक को रीसेट करने का कोई तरीका है?
class Game extends React.Component {
constructor(props) {
super(props);
this.state = {
...
};
}
reset() {
var node = ReactDOM.findDOMNode(this),
ComponentName = this.constructor.name;
if (node) {
ReactDOM.unmountComponentAtNode(node);
ReactDOM.render(<ComponentName />, node);
}
}
...
}
मैं पर चले गए, और इस प्रकार घटक नाम हार्डकोड करने की कोशिश की:
class Game extends React.Component {
constructor(props) {
super(props);
this.state = {
...
};
}
reset() {
var node = ReactDOM.findDOMNode(this);
if (node) {
ReactDOM.unmountComponentAtNode(node);
ReactDOM.render(<Game />, node);
}
}
...
}
यह वास्तव में अच्छी तरह से काम करता है, लेकिन अगर वहाँ एक अंतर्निहित तरीका है कि बेहतर है, या एक अधिक सामान्य तरीके से मैं सोच रहा हूँ।
ES6 कक्षाओं का उपयोग करते समय प्रतिस्थापन मौजूद नहीं है। – Omnilord