1
이전 프로젝트에서이 기능을 사용했지만 정상적으로 작동했습니다. showModal
의 state
이 설정되지 않았을 것이라고 생각했지만 사진을 클릭하면 사실로 설정됩니다. 나는 아래에 코드를 게시 할 것이다.showModal이 true로 설정된 후에도 React-Bootstrap 모달이 팝업되지 않습니다.
더 나은 사회를 :) 만들 수 있도록, 당신은 오히려 다운 투표를 스팸보다 더 이상 정보가 필요하면 알려 주시기 바랍니다
import React, { Component } from 'react';
import { Modal } from 'react-bootstrap';
class Gallery extends Component {
constructor(props) {
super(props);
this.state = {
showModal: false
};
}
render() {
console.log(this.state);
const { gallery } = this.props;
return (
<section id="gallery" className="three">
<div className="container">
<header>
<h2>{gallery ? gallery.title : 'Select A Gallery'}</h2>
</header>
<div className="card-deck">
{gallery
? gallery.images.map((image, i) => (
<div key={i} className="card">
<img
onClick={() => {
this.setState({ showModal: true });
}}
className="card-img"
src={`${image}=s1000-c`}
alt="Card image cap"
/>
</div>
))
: null}
</div>
<Modal
bsSize="sm"
show={this.state.showModal}
onHide={() => this.setState({ showModal: false })}
>
<Modal.Header closeButton>
<Modal.Title>Purchase Item</Modal.Title>
</Modal.Header>
<Modal.Body>Hello</Modal.Body>
</Modal>
</div>
</section>
);
}
}
export default Gallery;
편집 : 모달 inspect
여기에 보여주는 두 장의 사진이에 나타나있다 :
은 이미 부트 스트랩 CSS를 가지고 있고, 그것이 작동 어디 다른 사람을 사용하고 있기 때문에 그것을 잘 작동합니다 : 내 예와 비교하는
시도합니다 (
.modal-backdrop .fade .in
검사)를. 음, 뭔가 막을 수 있을까요? CSS 파일 에서처럼? –"다른 곳에서 사용하고 있기 때문에"_과 잘 작동한다는 것은 무엇을 의미합니까? 동일한 프로젝트 또는 다른 프로젝트의 다른 곳에 있습니까? devtools로 DOM을 검사 할 때 모달이 보입니까? 어쩌면 뭔가가 그것을 숨기고 있을까요? –
잘 찾았습니다. 내가 찾은 것을 보여주기 위해 편집에 두 장의 사진을 추가했습니다. (사진이 추가됨) –