javascript - React 的状态如何通过使用扩展运算符来保存文件?

标签 javascript html reactjs file state

我对 [...files] 的理解是它会创建对文件对象的引用,但是 state 怎么可能只保存引用呢?

  handleChange = (e) => {
    const { onChange } = this.props;
    const files = this.getFileFromInput(e);

    onChange && onChange(e);

    this.setState(() => ({
      files: [...files],
    }));
  }

最佳答案

当您将一个数组扩展到另一个数组时,它会返回一个新数组,并引用旧数组。以这种方式使用的传播语法旨在取代 Object.assign。这适用于对象和数组。这些在功能上是等价的:

[...files]
Object.assign([], files)

关于javascript - React 的状态如何通过使用扩展运算符来保存文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48214019/

相关文章:

javascript - JQuery Mobile 动态添加的页面没有主题

jquery - Overlay div - 滚动尽可能多的内容

JavaScript 将参数传递给按钮 onclick 函数

reactjs - 如何访问 ComponentDidMount 方法中的 URL 参数以正确响应

reactjs - 如何自定义 Material-UI StepConnector

javascript - underscore.js _.memoize() 在行动中的例子?

javascript - 使用 d3.create 创建和附加分离的元素

javascript - 针对不同数据范围自动调整 jqplot 条形图的大小

javascript - 使用 JavaScript 滚动 iframe?

reactjs - 是否有强制执行 useState() 类型的 eslint 规则?