본문 바로가기
리액트

React

by Wanado 2022. 11. 1.
728x90

webpack deprecated

https://www.youtube.com/watch?v=ifSTp9WEHpo 

react-scripts > config > webpackDevServer.config

setupMiddlewares: (middlewares, devServer) => {
    if (!devServer) {
        throw new Error('webpack-dev-server is not defined')
    }

    if (fs.existsSync(paths.proxySetup)) {
        require(paths.proxySetup)(devServer.app)
    }

    middlewares.push(
        evalSourceMapMiddleware(devServer),
        redirectServedPath(paths.publicUrlOrPath),
        noopServiceWorkerMiddleware(paths.publicUrlOrPath)
    )

    return middlewares;
},

 

 

 

https://react.vlpt.us/basic/22-context-dispatch.html

 

22. Context API 를 사용한 전역 값 관리 · GitBook

22. Context API 를 사용한 전역 값 관리 이번에 사용되는 코드는 다음 CodeSandbox 에서 확인 할 수 있습니다. 우리가 현재 만들고 있는 프로젝트를 보면, App 컴포넌트에서 onToggle, onRemove 가 구현이 되어

react.vlpt.us

https://developer0809.tistory.com/133

 

[#. React] parent에서 버튼 클릭할 때마다 children에서 div 영역 생성하기

추가 버튼을 클릭하면 input, textarea 영역이 생겼으면 좋겠다 근데 react에서 return문 안에서 for문은 사용하지 못 하기 때문에 어떤 방법을 사용할지 고민하다가 버튼 onClick 이벤트가 발생할 때마다

developer0809.tistory.com

* fast-api 연동

https://testdriven.io/blog/fastapi-react/

 -내가 놓친 부분 (data 같은 건지 체크필요)

 const fetchProjects = async () => {
      const response = await fetch("http://localhost:8000/project")
      const projects = await response.json()
      setProjects(projects.data)
    }
@app.get("/project",tags=["projects"])
async def get_projects() -> dict:
    return {"data": projects}​

 

*iterate 오류

https://upokary.com/uncaught-typeerror-object-is-not-iterable-cannot-read-property-symbolsymbol-iterator/

 

*Input Textbox 추가하기

https://developer0809.tistory.com/133

 

*... 의미

https://krksap.tistory.com/1381

* 배열에 객체 추가

https://velog.io/@bellecode20/%EA%B0%9D%EC%B2%B4%EB%A1%9C-%EC%9D%B4%EB%A3%A8%EC%96%B4%EC%A7%84-%EB%B0%B0%EC%97%B4%EC%97%90-%EA%B0%9D%EC%B2%B4-%EC%B6%94%EA%B0%80%ED%95%98%EA%B8%B0-%EB%A6%AC%EC%95%A1%ED%8A%B8-React-hooks

*함수형컴포넌트 이벤트 핸들링 form

https://technicolour.tistory.com/48

https://bgeun2.tistory.com/28

* 항목별 삭제

https://bgeun2.tistory.com/28

 

*eslint

[오류해결] npm install 설치시 npm ERR! code ERESOLVE

npm install 뒤에 ' --save --legacy-peer-deps ' 를 추가해주면 된다.

 

https://velog.io/@vsnm25/JSX-%EC%99%80-Eslint-Prettier-%EC%A0%81%EC%9A%A9

 

 

오류해결

[Webpack] BREAKING CHANGE: webpack < 5 used to include polyfills for node.js core modules by default

https://velog.io/@jaewoneee/Webpack

 

오류해결

react class Add React Component onClick

https://archuive.tistory.com/58

<바르게 정렬 Prettier>

install

https://prettier.io/docs/en/install.html

 

실행

https://www.daleseo.com/js-prettier/

npx prettier "index.js"

 

<JSX란>

https://developerntraveler.tistory.com/54

 

[React 기초] JSX란? / JSX 문법

JSX란? JSX는 자바스크립트의 확장 문법이다. XML과 매우 비슷하게 생겼으며, 이런 형식으로 작성한 코드는 브라우저에서 실행되기 전에 코드가 번들링되는 과정에서 바벨을 사용하여 일반 자바스

developerntraveler.tistory.com

 

https://m.blog.naver.com/pjt3591oo/221907792621

 

[react] React Developer Tools를 이용한 컴포넌트 렌더링 이해와 배포

리액트에서 렌더링을 이해하는 것은 매우 중요합니다. 렌더링이란 리액트 엘리먼트를 html 형태로 변환하여...

blog.naver.com

<reactstrap>

https://anerim.tistory.com/145

 

[리액트 React] reactstrap 사용하는 법 / reactstrap 실무에서 사용하는 기능 공유 / reactstrap 종류

안녕하세요. 디자인도 하고, 개발도 하는 '디발자 뚝딱'입니다. 이번 포스팅에서는 리액트로 개발할 때 유용하게 사용되는 reactstrap에 대해 다뤄볼게요! 지금부터는 가독성을 위해 문어체를 사용

anerim.tistory.com

https://reactstrap.github.io/?path=/story/home-installation--page 

 

Storybook

 

reactstrap.github.io

<react-bootstrap>

https://samtao.tistory.com/30

 

리액트에서 부트스트랩(React Bootstrap)적용하기

리액트에서 부트스트랩을 사용할수 있는 라이브러가 2개있다. react-bootstarp 과 reactstarp 이다. 두개중에 사용하고 싶은걸 사용하면 된다. www.npmtrends.com/react-bootstrap-vs-reactstrap react bootstrap vs reactstrap

samtao.tistory.com

<Switch>

https://baeharam.netlify.app/posts/react/why-switch-is-needed

 

[React] <Switch>는 언제 써야 할까? - 배하람의 블로그

기본적인 라우터의 동작 방식 라우터에는 가 보통 많이 사용되며 와 를 통해서 라우팅을 구현하는 방식이다. 예를 들어, 홈페이지, 영화페이지, 리뷰페이지가 있다고 하자. 각각의 URL을 / , /movies

baeharam.netlify.app

<Route render >

https://nyang-in.tistory.com/228

 

[React] react-router에서 render 이용해서 컴포넌트 보여주기

react-router에서 해당하는 경로에 맞는 컴포넌트를 렌더하는 방법은 3가지가 있다. 1. 의 자식으로 렌더하는 방법 import React from "react"; import { BrowserRouter, Link, Route} from "react-router-dom"; import "./app.css";

nyang-in.tistory.com

 

<no-unused-vars 오류 안뜨게 하는 법>

https://leirbag.tistory.com/106

 

React 터미널 창에 Warning 안뜨게 하는법

리액트 프로그래밍 시 아래와 같이 Warnig이 터미널에 찍히는 경우가 있습니다. WARNING in src\App.js Line 10:12: '글제목변경' is assigned a value but never used no-unused-vars Line 11:13: '글제목변경2' is assigned a value

leirbag.tistory.com

 

<usecallback>

https://www.daleseo.com/react-hooks-use-callback/

 

React Hooks: useCallback 사용법

Engineering Blog by Dale Seo

www.daleseo.com

<Form 만들기>

-참조 사용하기 

리액트에서 폼 컴포넌트를 만들어야 할 때 몇 가지 패턴을 사용할 수 있다. 

그중 참조라는 리액트 기능을 사용해 직접 DOM에 접근하는 방법이 포함된다. 리액트에서 참조는 컴포넌트의 생명주기(lifetime)값을 저장하는 객체다. 참조와 관련한 여러가지 용례가 있다. 이번에는 참조를 사용해 DOM 노드에 직접 접근하는 방법을 살펴본다.

 

import React, {useRef} from "react";

export default function AddQuest({ onNewQuest = f => f }) {
    const Qtitle= useRef();
    const Qanswer= useRef();

    const submit = e => {
        e.preventDefault();
        const title = Qtitle.current.value;
        const answer = Qanswer.current.value;
        onNewQuest(title, answer);
        Qtitle.current.value="";
        Qanswer.current.value="";

    };

    return (
        <form onSubmit={submit}>
            <input ref={Qtitle} type="text" />
            <input ref={Qanswer} type="checkbox" />
            <button>ADD</button>
        </form>
    );
}

 

제어가 되는 컴포넌트

폼 값을 DOM이 아니라 리액트로 관리한다. 제어가 되는 컴포넌트를 쓸 때는 참조를 사용할 필요도 없고, 명령형 코드를 작성할 필요도 없다. 제어가 되는 커모넌트를 사용하면 튼튼한 폼 검증 기능 등의 추가가 훨씬 더 쉬워진다.

import React, { useState } from "react";

export default function AddQuest({ onNewQuest = f => f }) {
    const [title, setTitle] = useState("");
    const [answer, setAnswer] = useState("");

    const submit = e => {
      e.preventDefault();
      onNewQuest(title,answer);
      setTitle("");
      setAnswer("");  
    };

    return(
        <form onSubmit={submit}>
            <input value={title}
            onChange={event => setTitle(event.target.value)}
            type="text"
            />
        </form>
    );

   
}
728x90

'리액트' 카테고리의 다른 글

react 로그인 후 화면 전환 (navigate)  (0) 2023.02.09
react Token  (0) 2023.02.09
reactjs 와 nodejs 관계  (0) 2023.02.02
React DatePicker 사용  (0) 2023.01.04
Chakra-ui  (0) 2022.11.26