Я использую избыточность, я хочу вызвать функцию перед отправкой какого-либо действия на преобразователь .
И еще одна вещь - я не хочу выводить методы класса за пределы класса .
Я пробовал гуглить, везде они просто отправляют действие.
Я думаю, что я могу упустить какое-то базовое c понимание. Может кто-нибудь из вас подскажет, как поступить?
Ниже мой код:
class UltimateConsoleFunctionality extends React.Component {
constructor(props) {
super(props);
}
spinReels = function() {
gsap.from(".Reels-row-symbols", 0.15, {
y: "-=500",
repeat: 10,
ease: Linear.easeNone,
onComplete: this.stopReels
});
};
stopReels = function() {
gsap.set(".Reels-row-symbols", { x: 0, y: 0 });
};
render() {
switch (this.props.type) {
case "spinStop":
if (this.props.spin && !this.props.stop) {
return (
<div className="Ultimate-console-functionality">
<img
alt="spinButton"
src={spinButton}
onClick={this.props.spinReels}
className="spinStop"
/>
</div>
);
} else if (!this.props.spin && this.props.stop) {
return (
<div className="Ultimate-console-functionality">
<img
alt="stopButton"
src={stopButton}
onClick={this.props.stopReels}
className="spinStop"
/>
</div>
);
} else if (!this.props.spin && !this.props.stop) {
return (
<div className="Ultimate-console-functionality">QuickSpinMode</div>
);
}
break;
case "quickSpin":
return (
<div className="Ultimate-console-functionality">
{this.props.quickSpin ? (
<img
alt="quickSpin"
src={quickSpinSelected}
onClick={this.props.quickSpinMethod}
className="spinStop"
/>
) : (
<img
alt="stopButton"
src={quickSpin}
onClick={this.props.quickSpinMethod}
className="spinStop"
/>
)}
</div>
);
break;
default:
return <div className="Ultimate-console-functionality">OTHERS</div>;
}
}
}
const mapStateToProps = state => {
return {
spin: state.spin,
stop: state.stop,
quickSpin: state.quickSpin
};
};
const mapDispatchToProps = dispatch => {
return {
spinReels: () => {
// How to call my class below method here
UltimateConsoleFunctionality.spinReels();
dispatch({ type: "SPIN" });
},
stopReels: () => {
// How to call my class below method here
UltimateConsoleFunctionality.stopReels();
dispatch({ type: "STOP" });
},
quickSpinMethod: () => {
dispatch({ type: "QUICKSPIN" });
}
};
};
export default connect(
mapStateToProps,
mapDispatchToProps
)(UltimateConsoleFunctionality);