Advertisement
Guest User

Untitled

a guest
Dec 9th, 2019
112
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.29 KB | None | 0 0
  1. import React from 'react';
  2.  
  3. import './App.css';
  4.  
  5. class App extends React.Component {
  6.  
  7. constructor(props) {
  8. super(props)
  9.  
  10. this.state = {
  11. result: 0,
  12. operator: null
  13. }
  14.  
  15. }
  16.  
  17. setNumber(number) {
  18.  
  19. if (this.state.result === 0) {
  20. this.setState({result: number})
  21. } else if (this.state.operator === '+') {
  22. this.setState({
  23. result: this.state.result + number,
  24. operator: null
  25. })
  26. } else if (this.state.operator === null) {
  27. this.setState({result: parseInt(`${this.state.result}${number}`)})
  28. }
  29.  
  30. }
  31.  
  32. addition() {
  33. this.setState({operator: '+'})
  34. }
  35.  
  36. render() {
  37.  
  38. return (
  39. <div className="App">
  40. <header className="App-header">
  41.  
  42. <span> Resultat: {this.state.result} </span>
  43.  
  44. <table>
  45. <tbody>
  46.  
  47. <tr>
  48. <td onClick={() => {
  49. this.setNumber(1)
  50. }} > 1</td>
  51. <td onClick={() => {
  52. this.setNumber(2)
  53. }}>2</td>
  54. <td onClick={() => {
  55. this.setNumber(3)
  56. }}>3</td>
  57. <td onClick={() => {
  58. this.addition()
  59. }} >+</td>
  60. </tr>
  61.  
  62. <tr>
  63. <td>4</td>
  64. <td>5</td>
  65. <td>6</td>
  66. <td>*</td>
  67. </tr>
  68.  
  69. <tr>
  70. <td>7</td>
  71. <td>8</td>
  72. <td>9</td>
  73. <td>/</td>
  74. </tr>
  75. </tbody>
  76.  
  77. </table>
  78.  
  79. </header>
  80. </div>
  81. );
  82.  
  83. }
  84.  
  85.  
  86. }
  87.  
  88. export default App;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement