@timonck

Как правильно прописать типы через Flow?

У меня есть класс для которого нужно написать типы:

class Point {
    constructor(x:number, y:number) {
        if (arguments.length > 2 || arguments.length < 2) {
            throw new Error('You send more or less arguments')
        }
        this.x = x;
        this.y = y;
    }

    static randomNumber(from:number, to:number) {
        if (arguments.length > 2 || arguments.length < 2) {
            throw new Error('You send more or less arguments')
        }
        return Math.random() * (to - from) + from;
    }

    static randomPoint(xFrom:number, xTo:number, yFrom:number, yTo:number) {
        if (arguments.length > 4 || arguments.length < 4) {
            throw new Error('You send more or less arguments')
        }
        return new Point(
            Point.randomNumber(xFrom, xTo), Point.randomNumber(yFrom, yTo)
        )
    }
}

выбивает Cannot assign `x` to `this.x` because property `x` is missing in `Point`

Как это сделать правильно?
  • Вопрос задан
  • 47 просмотров
Решения вопроса 1
0xD34F
@0xD34F Куратор тега JavaScript
class Point {
  x: number;
  y: number;

  // дальше всё по-старому, constructor и т.д.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы