-
글쓴이글
-
2021년 4월 30일 15:25 #8861
김인구참가자app 안에 let [show, show변경] = useState(true); 만들어서
<button className="btn btn-primary" onClick={ () => {
// axios.post('서버URL', { id : 'codingapple', pw : 1234 }).then(){show &&
<Loading> 로딩 중입니다.</Loading>
}
axios.get('https://codingapple1.github.io/shop/data2.json')
.then((result)=>{
console.log(result.data);
shoes변경( [ ...shoes, ...result.data ] );})
.catch(()=>{
console.log('실패했어요');
})} }>더보기</button>
이후에 show값을 false로바꿔서 안보이게 해야겟다는 건 알겟는데,, 코드로 표현을 하는게어렵습니다.. 힌트좀 주시겠어요
전에 했을때 onclick으로 show변경(!show) 이런식으로하면 됫엇는데 이거는 좀다른거같아서요
2021년 4월 30일 15:36 #8863
김인구참가자<button className="btn btn-primary" onClick={ () => {
// axios.post('서버URL', { id : 'codingapple', pw : 1234 }).then(){show &&
<Loading> 로딩 중입니다.</Loading>
}
axios.get('https://codingapple1.github.io/shop/data2.json')
.then((result)=>{
show변경(false);
console.log(result.data);
shoes변경( [ ...shoes, ...result.data ] );})
.catch(()=>{
console.log('실패했어요');
show변경(false);
})} }>더보기</button>
여기에
let Loading = styled.div`
margin:0 auto;
width:200px; height:100px;
background-color:black;
border:1px solid #ffffff;
color:white;
text-align:center;
line-height:100px;
font-size:20px;
`;스타일 컴포넌트도 적용했는데,, 안되서요
2021년 4월 30일 15:57 #8864
김인구참가자+ 더보기 몇번이상 눌렀을 떄 버튼 안보이게하는 코드도 개발중인데...
상단에 var count = 0;
onclick안에 이제
count++;
if(count>2){
버튼이 안보이게 해야한다 <= 이 부분을 구현을 못하겠습니다.
}
2021년 4월 30일 17:16 #8876
codingapple키 마스터show &&<Loading> 로딩 중입니다.</Loading> 이건 맞는데
버튼의 onClick 안에다가 HTML을 뱉어도 아무일도 일어나지 않습니다저걸 다른 곳으로 옮겨보도록 합시다
버튼이 안보이게 해야한다 <= 버튼을 UI처럼 디자인해놓으십시오
1. 버튼을 켜고끄는 state를 하나 만들어두시고 그거 따라서 버튼이 켜지게 if문 등으로 코드를 짜놓습니다.
2. 특정 조건을 만족했을 때 버튼 안보이게 state를 변경하면 됩니다
2021년 4월 30일 18:03 #8882
김인구참가자로딩 중 은 해결했습니다.
그런데 버튼 숨기기에서 몇가지 질문이 있습니다.
1. 그러면 버튼을 UI로
function Btn () {
return(
<button className="btn btn-primary" id="bt" onClick={ () => {show변경(true);
// axios.post('서버URL', { id : 'codingapple', pw : 1234 }).then()
axios.get('https://codingapple1.github.io/shop/data2.json')
.then((result)=>{
console.log(result.data);
shoes변경( [ ...shoes, ...result.data ] );
show변경(false);
})
.catch(()=>{
console.log('실패했어요');
show변경(false);
})} }>더보기</button>
)
}이런식으로 만들었는데, 이렇게되면 state를 다 props해와서 바꿔줘야 하는지,
그리고 제 생각으로는 var count=0;
으로 시작해서 클릭시 count가 올라가서 count가 몇보다 크면 안보이게 false값으로 만들어줘야할것같은데,,, 만드는데 좀 더 힌트 부탁드립니다.
2021년 4월 30일 23:09 #8889
codingapple키 마스터부모의 state를 자식컴포넌트에서 쓰고 싶으면 props전송밖에 없습니다
count 변수가 버튼 바깥에 있으면
if (count < 2)
<Btn/>
else
null이런 식으로 코드짜면 안될까요
-
글쓴이글
- 답변은 로그인 후 가능합니다.