Преобразование класса ES6 в класс машинописи - PullRequest
0 голосов
/ 12 февраля 2020

У меня есть следующий класс ES6.

class Http {
    isFormData;
    url;
    token;
    data;

    constructor() {
        this.isFormData = false;
        this.url = '';
        this.token = '';
        this.data = {};
    }

    /** Set url */
    setUrl(url: string) {
        this.url = url;
        return this;
    }

    /** Set data */
      setData(data: Object) {
        this.data = data;
        return this;
    }
}

export default new Http();

Я хочу сделать его классом машинописи. Я пытался, но некоторые свойства не определены должным образом. Как я могу сделать это классом машинописи?

Ответы [ 2 ]

5 голосов
/ 12 февраля 2020

Вам необходимо указать типы ваших свойств. Я также предлагаю вам сделать их личными:

class Http {
    private isFormData: boolean;
    private url: string;
    private token: string;
    private data: Object;

    constructor() {
        this.isFormData = false;
        this.url = '';
        this.token = '';
        this.data = {};
    }

    /** Set url */
    setUrl(url: string) {
        this.url = url;
        return this;
    }

    /** Set data */
    setData(data: Object) {
        this.data = data;
        return this;
    }
}

export default new Http();
0 голосов
/ 12 февраля 2020

лучше экспортировать ваш класс с export class Http, чтобы вы могли импортировать его как import {Http} from './http'

 export  class Http {
 isFormData: boolean;
 url: string;
 token: string;
 data: Object;

constructor() {
    this.isFormData = false;
    this.url = '';
    this.token = '';
    this.data = {};
}

/** Set url */
setUrl(url: string) {
    this.url = url;
    return this;
}
/** Set data */
setData(data: Object) {
    this.data = data;
    return this;
}

}

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...