Javascript создать объект на основе определенных свойств класса

Я хочу, чтобы экземпляр объекта с существующими свойствами текущего класса простым способом.

Каким-то образом я все еще не мог найти ответ в Сети.

Так я и ожидал. Пожалуйста, дайте мне простой ответ, если таковой имеется.

class user {
    @observable username = '';
    @observable email = '';
    @observable password = '';
    @observable gender = '';

    @observable errors = {};

    @action
    submitRegister() {
      const userData = {
        username,
        email,
        password,
        gender
        }

        Axios.post('/api/users', userData).then(this.recieveMessage,this.recieveErrors);
      }
}

Если я делаю следующее для каждого свойства, оно работает, но я думаю, что есть более короткий ответ. По крайней мере, я на это надеюсь.

const userData = { [this.username]: this.username, ...}

1 ответ

Основываясь на вашем кратком ответе, надежде и вашей попытке:

const userData = { [this.username]: this.username, ...}

Вместо этого попробуйте распространять this.username, вот так:

const userData = { ...this.username }

Также попробуйте выкладывать this, вот так:

const userData = { ...this }

Другие вопросы по тегам