Добавление значений в класс - PullRequest
0 голосов
/ 29 августа 2018

C # разработчик здесь. Я хотел бы спросить, как я могу добавить значения в класс.

Это мой класс:

class Players {
    constructor(playerOne, playerTwo) {
    this.playerOne = playerOne;
    this.playerTwo = playerTwo;
    }
}

Здесь я называю это конструктором:

handleClick() {
this.setState({ clicked: true });
Players(
  document.getElementById("Select_Player1").value,
  document.getElementById("Select_Player2").value
);
console.log(Players.playerOne);
console.log(Players.playerTwo);
}

И я экспортирую его в конец файла:

export { Players };

После нажатия на кнопку, которая запускает приложение handleClick(), выдается ошибка: TypeError: Cannot call a class as a function.

1 Ответ

0 голосов
/ 29 августа 2018

this.playerOne и this.playerTwo не статичны!

поэтому для использования не статично:

class Players {
    constructor(playerOne, playerTwo) {
        this.playerOne = playerOne;
        this.playerTwo = playerTwo;
    }
}
var myP = new Players(
  'test1',
  'test2'
);
console.log(myP.playerOne);
console.log(myP.playerTwo);
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/0.14.8/react.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/0.14.8/react-dom.min.js"></script>

И использовать статический:

class Players {
    static setPlayers(playerOne, playerTwo) {
        this.playerOne = playerOne;
        this.playerTwo = playerTwo;
    }
}
Players.setPlayers(
  'test1',
  'test2'
);
console.log(Players.playerOne);
console.log(Players.playerTwo);
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/0.14.8/react.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/0.14.8/react-dom.min.js"></script>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...