-
글쓴이글
-
2021년 6월 15일 17:41 #10384
나님코딩등장참가자.....
<h3>TODAY IS GOOD DAY</h3>
{/* <button onClick = { 제목바꾸기 }>버튼</button> */}
<hr/>
{
제목.map(function(글,i){
return <div className = "list" key = {i}>
<h3><a onClick={()=>{클릭된거변경(i); 서브변경(!서브)}}> {글}</a><span onClick={ ()=>{ let copy = [...따봉]; copy[i]++; 따봉변경(copy)} }>? {따봉[i]}</span></h3>
<p>{year}년 {month}월{date+i} 일</p>
<hr/>{
서브 === true
? <Sub 제목={제목} 날짜 = {date} 넘버 = {클릭된거} />
: null
}
</div>
})}
....이렇게 적었는데 Sub라고 만든 모달창이 뜨질않습니다 무슨 문제일까요? map 밖으로 빼도 안나옵니다
2021년 6월 16일 15:51 #10440
나님코딩등장참가자네 크롬 콘솔창에서 에러도 없고 코드도 제대로 짠거 같은데 안뜹니다 ㅠㅠ
sub 컴포넌트 코드입니다!
function Sub(props){
return (
<div className = "modal">
<h2>{ props.제목[props.넘버]}</h2>
<p>{props.날짜+props.넘버}일</p>
<p>맑음</p>
</div>
)
}2021년 6월 16일 16:01 #10441
codingapple키 마스터map 반복문 안의 return 에있는 모든 html을 () 소괄호로 묶어봅시다
그리고 서브라는 state 만들 때 어떻게 만드셨습니까
2021년 6월 16일 18:53 #10454
codingapple키 마스터App.js 에 있는걸 다 복붙해주십시오
function Sub() 을 이상한데 만든게 아닐까요 function App 안에 만들었다던지요
2021년 6월 17일 10:40 #10473
나님코딩등장참가자/* eslint-disable */
import './App.css';
import {Navbar,Container,Nav,NavDropdown,Jumbotron,Button} from 'react-bootstrap';
import React, {useState} from 'react';function App() {
let [제목, 제목변경] = useState(['오늘의 날씨','내일의 날씨','모레의 날씨']);
let [따봉, 따봉변경] = useState([0, 0 ,0]);
let [서브, 서브변경] = useState(false);
let [클릭된거, 클릭된거변경] = useState(0);
let [입력값, 입력값변경] = useState('');let today = new Date();
let year = today.getFullYear();
let month = today.getMonth()+1;
let date = today.getDate();function 따봉추가(){
var newArray = [...따봉];
newArray.unshift(0);
따봉변경( newArray );
}
return (
<div className="App">
<Navbar collapseOnSelect expand="lg" bg="dark" variant="dark">
<Container>
<Navbar.Brand href="#home">Write Free</Navbar.Brand>
<Navbar.Toggle aria-controls="responsive-navbar-nav" />
<Navbar.Collapse id="responsive-navbar-nav">
<Nav className="me-auto">
<Nav.Link href="#features">Features</Nav.Link>
<Nav.Link href="#pricing">Pricing</Nav.Link>
<NavDropdown title="Dropdown" id="collasible-nav-dropdown">
<NavDropdown.Item href="#action/3.1">Action</NavDropdown.Item>
<NavDropdown.Item href="#action/3.2">Another action</NavDropdown.Item>
<NavDropdown.Item href="#action/3.3">Something</NavDropdown.Item>
</NavDropdown>
</Nav>
<Nav>
<Nav.Link href="#deets">More deets</Nav.Link>
<Nav.Link eventKey={2} href="#memes">
Dank memes
</Nav.Link>
</Nav>
</Navbar.Collapse>
</Container>
</Navbar><Jumbotron className = "background">
<h1>WELCOM</h1>
<p>
자유롭게 이용해 봅시다.
</p>
</Jumbotron><Jumbotron className = "interview">
<h1>Shop & Review</h1>
<p style = {{color : "black"}}>
아래의 일러스트를 확인하세요. 그리고 리뷰도 적어보세요
</p>
<p>
<Button variant="secondary">Secondary</Button>
</p>
</Jumbotron>
<hr/>
<h3>대표 일러스트</h3>
<hr/><div className = "container">
<div className = "row">
<div className = "col-md-4">// img 안 src가 길어서 보기 힘드실까봐 생략합니다!
<p>이두나 일러스트</p>
</div>
</div>
</div><hr/>
<h3>TODAY IS GOOD DAY</h3>
{/* <button onClick = { 제목바꾸기 }>버튼</button> */}
<hr/>
{
제목.map(function(글,i){
return (<div className = "list" key = {i}>
<h3><a onClick={()=>{클릭된거변경(i); 서브변경(!서브)}}> {글}</a><span onClick={ ()=>{ let copy = [...따봉]; copy[i]++; 따봉변경(copy)} }>? {따봉[i]}</span></h3>
<p>{year}년 {month}월{date+i} 일</p>
<hr/>{
서브 === true
? <Sub 제목={제목} 날짜 = {date} 넘버 = {클릭된거} />
: null
}</div>
)
})}
<div className = "publish">
<h3>WRITE YOUR THINK</h3>
<input onChange = {(e)=>{입력값변경(e.target.value)}}/>
<Button variant="secondary" onClick = {()=>{var copy = [...제목];copy.unshift(입력값);제목변경(copy); 따봉추가();}}>저장</Button>
</div></div>
);
}function Sub(props){
return (
<div className = "modal">
<h2>{ props.제목[props.넘버]}</h2>
<p>{props.날짜+props.넘버}일</p>
<p>맑음</p>
</div>
)
}export default App;
전체 코드입니다!
-
글쓴이글
- 답변은 로그인 후 가능합니다.