React js src 属性没有更新

React js src attribute is not updating

我有一个接收图像文件的组件 Img。该组件读取文件并将 base64 结果放入我的 state.base64 变量中。

当我 forceUpdate 状态并记录值时,结果就在那里,但在浏览器中它看起来是空的。这是我的代码。

Jsbin code

这部分代码有问题:

return (
  <img src={this.state.base64} {...this.props} />
);

如果您登录 this.props,您会看到一个 src 属性值为 null。因此,{...this.props} 正在覆盖您正在设置的显式 src 属性。

您可以更改顺序,让更具体的道具排在最后:

return (
  <img {...this.props} src={this.state.base64} />
);

或者从 this.props 创建对象并移除 src 属性。

有关工作示例,请参阅 http://jsbin.com/rutokutemi/2/edit