首页 > 解决方案 > 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, ...}

标签: javascriptreactjsobjectpropertiescreateobject

解决方案


根据您的简短回答希望和您的尝试:

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

相反,请尝试传播this.username,如下所示:

const userData = { ...this.username }

也尝试传播this,像这样:

const userData = { ...this }


推荐阅读