1

我在 nextjs 项目上使用 react-dropzone,目前当我服务器渲染 dropzone 组件时,我收到错误:

“index.js:2178 警告:道具multiple不匹配。服务器:“假”客户端:“真”

我尝试在组件上设置 multiple={true} 但没有运气。但是,当我在组件上设置 multiple={false} 时,客户端渲染工作正常,但禁用了多文件上传(如预期的那样)

关于为什么不使用 multiple={true} 进行完整服务器渲染的任何想法?

React,NextJS 项目与 react-dropzone

尝试在组件上设置 multiple={true}。尝试重建项目。

设置 multiple={false} 有效,但会禁用所需的功能。

<Dropzone multiple={true} onDrop={this.onDrop}>
  {({ getRootProps, getInputProps }) => (
    <StyledDropzone>
      <DropPoint {...getRootProps()}>
        <input {...getInputProps()} />
        <p>Drag and drop some images to upload</p>
      </DropPoint>
      <FilePreviewer>
        <Thumbs>{thumbs}</Thumbs>
      </FilePreviewer>
    </StyledDropzone>
  )}
</Dropzone>
4

1 回答 1

0

对于 SSR,将其设置为原生元素:

<input {...getInputProps()} multiple />
于 2019-04-01T18:10:26.183 回答