有没有办法将这两行合并为一个?

时间:2017-06-19 18:34:26

标签: javascript ecmascript-6

我想将这两行写成一行:

const { page, totalPages, changePage } = this.props;
const pagination = { page, totalPages, changePage };

我无法在任何地方找到如何做到这一点,只有我能够在一行中完成它才有意义。

我希望像

这样的东西
const pagination = { page, totalPages, changePage } = this.props;

2 个答案:

答案 0 :(得分:1)

不,你不能像现在这样做。您正在滥用解构,这应该用于从对象中获取字段并将其转换为局部变量。您正在执行此操作,然后立即将它们转换回对象。

要在一步中执行此操作,只需创建一个新对象并从旧对象引用所需的字段。

const pagination = { page: this.props.page, totalPages: this.props.totalPages, changePage: this.props.changePage }

答案 1 :(得分:0)

您可以像这样分配,但我不明白分配这样的原因。

const pagination = { page, totalPages, changePage } = this.props;