React-dropzone样式下降区域

时间:2017-03-20 05:16:12

标签: javascript css reactjs dropzone.js

我是reactjs的新手, 尝试创建使用react-dropzone的组件。 我想知道,什么是覆盖默认设置以设置拖放区域样式的最佳方法。

到目前为止,我有inline style,但在我看来,我并没有做'正确'的事情。

<Row>
    <Jumbotron className="text-center">
        <h4>Create a manual call</h4>
        <Dropzone 
            className=""
            multiple={false}
            onDrop={this.onDrop}
            style={{"width" : "100%", "height" : "20%", "border" : "1px solid black"}}>
                <div>
                    Try dropping some files here, or click to select files to upload.
                </div>
        </Dropzone>
    </Jumbotron>
</Row>

任何帮助或更好的建议?

谢谢!

2 个答案:

答案 0 :(得分:12)

你在做什么都很好。如果您愿意,可以在添加到项目中的.css文件中编写样式。给组件一个className并在项目的某处导入css。

<Dropzone
  className="dropzone"
  multiple={false}
  onDrop={this.onDrop}>
  <div>
    Try dropping some files here, or click to select files to upload.
  </div>
</Dropzone>

/* styles.css */
.dropzone {
  width : 100%;
  height : 20%;
  border : 1px solid black;
}

有更多涉及库的css-in-js,如样式组件,但没有100%正确的解决方案。

答案 1 :(得分:3)

您可以像这样创建一个样式对象

const dropzoneStyle = {
    width  : "100%",
    height : "20%",
    border : "1px solid black"
};

在jsx中使用此变量

<Dropzone 
  className=""
  multiple={false}
  onDrop={this.onDrop}
  style={dropzoneStyle}
>
  <div>
       Try dropping some files here, or click to select files to upload.
  </div>
</Dropzone>