react的解构赋值

我最近在用react讨生活。我的感觉,react开发效率不高。这当然应该是我还不熟悉react的缘故。但是,在阅读react代码过程中,其中一个容易困惑的地方是它到处充斥着的解构赋值。当然了,解构赋值并不是React特有的功能,而是ES6(ECMAScript 2015)引入到JavaScript中的语言特性。但react中泛滥成灾是普遍现象。

据说解构赋值简化了语言,使得代码更具可读性云云。不敢苟同。比如下面这个:

render() {
  const {
    sysUser: { data, roleSelectData, orgTreeData, userType },
    loading,
  } = this.props;
  ...
}

是什么意思?

一句句地解构。

首先第一层:

render() {
  const {sysUser,loading} = this.props;
  ...
}

哦,这是解构赋值,相当于

const sysUser = this.props.sysUser;
const loading = this.props.loading;

然后第二层,相当于

const sysUser = this.props.sysUser;
const loading = this.props.loading;

const data = sysUser.data;
const roleSelectData = sysUsedr.orgTreeData;
const userType = sysUser.userType;

但是,这难道不是json对象的定义模式吗,怎么在这里变成了赋值,并且是将左边的东西赋给右边的?只能说这种赋值,忽左忽右,神鬼莫测。简则简矣,可读则未必。
在这里插入图片描述

相关推荐

  1. 赋值使用

    2024-07-14 21:08:04       50 阅读
  2. 变量和对象赋值

    2024-07-14 21:08:04       53 阅读
  3. ES6中赋值

    2024-07-14 21:08:04       30 阅读
  4. ES6 赋值

    2024-07-14 21:08:04       36 阅读
  5. js 赋值

    2024-07-14 21:08:04       56 阅读
  6. 赋值及其原理

    2024-07-14 21:08:04       34 阅读
  7. ES实用深度赋值方法

    2024-07-14 21:08:04       59 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-14 21:08:04       67 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-14 21:08:04       72 阅读
  3. 在Django里面运行非项目文件

    2024-07-14 21:08:04       58 阅读
  4. Python语言-面向对象

    2024-07-14 21:08:04       69 阅读

热门阅读

  1. redux & react-redux结合使用 2024

    2024-07-14 21:08:04       21 阅读
  2. python热门面试题三

    2024-07-14 21:08:04       23 阅读
  3. C++字符串String和字符串字面量String Literals

    2024-07-14 21:08:04       21 阅读
  4. .NET MAUI开源架构_3..NET MAUI 提供的内容

    2024-07-14 21:08:04       23 阅读
  5. .NET MAUI开源架构_4..NET MAUI 应用支持的平台

    2024-07-14 21:08:04       19 阅读
  6. Spring 事务管理配置方法

    2024-07-14 21:08:04       22 阅读
  7. ISA95-Part5-安全和权限管理的设计思路

    2024-07-14 21:08:04       23 阅读
  8. 前端请求整合

    2024-07-14 21:08:04       17 阅读
  9. 2024.7.13 刷题总结

    2024-07-14 21:08:04       22 阅读