我已尝试让它发挥作用,但这就是发生的事情。
我也在网上找到了这个 https://gist.github.com/burgalon/870a68de68c5ed15c416fab63589d503,
import { Modal } from 'react-bootstrap'
import ModalDialog from 'react-bootstrap/lib/ModalDialog'
import Draggable from 'react-draggable'
class DraggableModalDialog extends React.Component {
render() {
return <Draggable handle=".modal-title"><ModalDialog
{...this.props} /></Draggable>
}
}
// enforceForce=false causes recursion exception otherwise....
export default ({titleIconClass, modalClass, children, title,...props}) =>
<Modal dialogComponent={DraggableModalDialog} show={true} enforceFocus={false} backdrop="static" {...props}>
<Modal.Header closeButton>
<Modal.Title>
{title}
</Modal.Title>
</Modal.Header>
<Modal.Body>
{children}
</Modal.Body>
</Modal>
我从搜索中得到的这段代码,我实际上无法实现这一点。
特别是这个,
<ModalDialog {...this.props} />
,我不明白为什么要发送道具以及发送什么样的道具。
并且
<Modal dialogComponent={DraggableModalDialog} show={true} enforceFocus={false} backdrop="static" {...props}>
&lt; ------ {... props}那是做什么的?它似乎不像给莫代尔提供道具。它的目的是什么?是否与
相关"<ModalDialog {...this.props} />"
如果这是一项有效的工作,有人可以给我一个暗示上述两个问题是如何工作的吗?
谢谢!
答案 0 :(得分:0)
对于可能仍在使用最新版本的react-bootstrap
(在撰写本文时我是1.0.0-beta.5
)的任何人。这是(https://gist.github.com/burgalon/870a68de68c5ed15c416fab63589d503)
import React, { Component } from "react";
import Modal from "react-bootstrap/Modal";
import Draggable from 'react-draggable';
import ModalDialog from 'react-bootstrap/ModalDialog';
class DraggableModalDialog extends React.Component {
render() {
return <Draggable handle=".modal-title"><ModalDialog {...this.props} />
</Draggable>
}
}
export default class BSModal extends Component {
render() {
return (
<Modal
dialogAs={DraggableModalDialog}
show={this.props.show}
onHide={this.props.close}>
<Modal.Header>
<Modal.Title>{this.props.title}</Modal.Title>
</Modal.Header>
<Modal.Body>
{this.props.children}
</Modal.Body>
<Modal.Footer >
</Modal.Footer>
</Modal>
);
}
}