# navlink

15개의 포스트
post-thumbnail

페이지 이동을 할 때, 새로 로딩을 하지 않고 이동해보자

키워드 Web APIs - History React Router - NavLink, Link, Navigate, useNavigate 최종 목표 React에서 라우팅 처리에 대해 배워보자. 현재 목표 페이지 이동을 할 때, 새로 로딩을 하지 않고 이동해보자. 현재 문제는? F12로 네트워크 탭을 켜보자. 페이지가 이동할 때마다 새로 로딩을 하고 있다. 어떻게 새로 로딩을 하지 않고 페이지를 이동할 수 있을까? 방법1: # 혹은 #! 으로 URL을 변경하자 주소 앞에 # 혹은 #! 을 붙이면 새로 로딩하지 않고 이동할 수 있다. > 이 방식은 history.pushState 도입 전에 방식이다. > > 지금도 Gmail은 이 방식을 쓰고 있다. 예를 들어, https://mail.google.com/mail/u/0/#inbox > > # 는 해시라고 하며, #! 는 해시뱅이라고 한다. 방법2: history

2023년 8월 11일
·
0개의 댓글
·
post-thumbnail

[React] 리액트 라우터로 SPA 개발하기

1. 라우팅이란???🤔 웹 애플리케이션에서 라우팅이라는 개념은 사용자가 요청한 URL에 따라 알맞는 페이지를 보여주는 것을 의미한다. 만약 자신이 애플리케이션을 만들 때 하나의 페이지로 충분한 것도 있지만, 블로그 같은 애플리케이션을 만든다면 여러 페이지가 필요할 것이다. 이렇게 여러 페이지로 구성된 웹 애플리케이션을 만들 때 페이지 별로 컴포넌트들을 분리해가면서 프로젝트를 관리하기 위해 필요한 것이 라우팅 시스템이다. 리액트에서 라우트 시스템을 구축하기 위해 사용할 수 있는 선택지는 크게 두 가지다! 리액트 라우터(React Router) : 이 라이브러리는 리액트의 라우팅 관련 라이브러리들 중에서 가장 오래됐고, 가장 많이 사용하고 있다. 컴포넌트 기반으로 라우팅 시스템을 설정할 수 있다. Next.js : 리액트 프로젝트의 프레임워크이다. Create React App처럼 리액트 프로젝트를 설정하는 기능, 라우팅 시스템, 최적화, 다국어 시스템 지원

2023년 8월 1일
·
1개의 댓글
·

NavLink

react에서 router를 처리할 때 Link를 자주 사용한다. 그런데 Link 태그를 사용하여 메뉴를 만들 경우 활성화된 메뉴의 스타일 속성을 적용해주기 위해선 별도의 처리가 필요하다. 하지만 NavLink는 별도의 처리 없이 활성화된 메뉴의 스타일 속성을 지정해줄 수 있다. NavLink > NavLink 는 Link의 특별한 버전입니다. 현재 URL과 클릭시 이동할 URL이 같을 경우, "style 속성" 을 추가해주는 기능을 가지고 있습니다. 스타일 외에도 추가 기능으로 선택된 NavLink의 경우 aria-current="page" 로 지정되어, 접근성에 도움이 됩니다. 활용 예시 1) activeStyle: object 2) isActive: function

2023년 7월 3일
·
0개의 댓글
·
post-thumbnail

[React] Link / NavLink

✅ Link react router를 사용하는 프로젝트에서는 a 태그를 바로 사용하면 안됨 => a 태그로 페이지 이동 시 브라우저에서 페이지를 새로 불러오기 때문 Link 컴포넌트도 a 태그를 사용하긴 하지만, 페이지를 새로 불러오는 것을 막고 History API를 통해 브라우저 주소의 경로만 바꾸는 기능이 내장\ 이동을 위한 태그이기때문에 to='route경로' 속성이 필수!! ✅ NavLink 링크에서 사용하는 경로가 현재 라우트의 경로와 일치하는 경우 특정 스타일 또는 CSS 클래스를 적용하는 컴포넌트 컴포넌트의 style과 className은 {isActive : boolean}을 파라미터로 전달받는 함수 타입의 값을 전달

2023년 5월 24일
·
0개의 댓글
·
post-thumbnail

[TIL] NavLink를 querystring으로 활성화 시키고 싶을 때 +내용 추가

앞선 TIL 에서 > 내 벨로그 > 글 > 태그목록 태그 목록을 구현하는데 NavLink를 사용했다. 그런데 스타일 active가 원하는 대로 적용되지 않았다. 처음에는 end 때문인줄 알았지만 생각해보면 태그 목록에서는 path 이동을 하지 않는다. 그래서 발생한 문제다! 태그 목록은 쿼리스트링을 받아서 주소가 변경되기 때문에 쿼리가 바뀔 때마다 className이 바뀌거나 active를 활성화 할 수 있는 조건을 주어서 사용할 수 있어야한다. 라고 했다. 생각한 방법은 간단하다. 먼저 네브링크를 만들어 주고 내가 부여한 쿼리스트링을 찾아 active를 주면 된다. 하지만 어떻게 해야할까? NavLink를 querystring으로 활성화 시키고 싶을 때 사용 방법 먼저 NavLink 사용하기 먼저 NavLink을 import 해준다. 이런 식으로 네브링크를 구성하게 되면, 태그 목록에서 전체보기는 기본 값, 'javascript'면 `?tag=javasc

2022년 11월 18일
·
0개의 댓글
·
post-thumbnail

[리액트를 다루는 기술] 페이지 이동을 다루는 useNavigate와 Link의 특별한 버전 NavLink

useNavigate Link를 사용하지 않고 페이지 이동 가능 navigate(-n): n만큼 뒤로 이동 navigate(n): n만큼 앞으로 이동(앞으로 버튼 활성화 되어있을 시에만 작동) navigate('/page', {replace: true}) 따옴표 안에 페이지 경로를 직접 입력해도 됨 replace: true로 설정하면 현재 페이지 기록이 사라지면서 경로 이동 replace는 옵션이며, 기본값은 false A에서 B로 이동 후 replace페이지로 넘어간 후 뒤로가기 버튼을 누르면 B는 기록에 남지 않으므로 A로 이동 NavLink NavLink는 Link경로와 현재 경로가 일치하는 경우 CSS나 className을 적용할 수 있음

2022년 10월 10일
·
0개의 댓글
·
post-thumbnail

[React] Link/NavLink

📌 Link 리액트 라우터에서 페이지 이동할 때는 Link 컴포넌트를 사용하면 내가 이동하고자 하는 경로(URL)로 이동 📌 NavLink > NavLink 는 Link의 특별한 버전 현재 URL과 클릭시 이동할 URL이 같을 경우, "style 속성" 을 추가해주는 기능을 가지고 있음. 스타일 외에도 추가 기능으로 선택된 NavLink의 경우 aria-current="page" 로 지정되어, 접근성에 도움이 됨. 리액트 웹의 현재 URL과 to가 가리키는 링크가 일치할 때, activeStyle과 activeClassName이 활성화 되고 일치하지 않으면 비활성화 activeStyle activeClassName 참고 : https://velog.io/@seong-dodo/React-Link와-NavLink

2022년 9월 22일
·
0개의 댓글
·

Link 와 NavLink active 표시

여기서는 react-router-dom V6 버전을 다룹니다. Link의 주소로 이동함과 동시에 indicator를 보여주고싶을 경우 1.Link tag url 일치 일경우 true값을 반환 2.NavLink tag 자체적으로 isActive라는 boolean값을 가지고 있다. 아래와 같이 사용할 수 있다. style={({ isActive }) => (isActive ? : } or style={props => (props.isActive ? : }

2022년 2월 1일
·
0개의 댓글
·

NavLink

* 리액트 프로젝트에서 Link 대신에 NavLink를 사용함으로써, active한 Link에 스타일을 적용시킬 수 있다. 이를 통해서, 클릭된 링크의 배경색을 바꾸는 등의 스타일의 적용이 가능하다. npm install react-router-dom을 통해 설치해 사용한다. NavLink의 activeStyle속성에 style값을 넣을 수 있다. 이를 통해서 현재 경로와 일치하는 NavLink에 스타일을 적용한다. CSS 파일에 .active 속성을 설정하면 동일한 효과를 얻을 수 있다. 🥭 Link로 렌더링되는 a태그의 파란색 밑줄을 없애기 위해서 text-decoration: none; 를 설정할 수 있다.

2022년 1월 11일
·
0개의 댓글
·

[React] react-router-dom의 NavLink

Intro react-router-dom의 NavLink에 대해 알아보자. NavLink Link와 비슷 현재 경로와 Link에서 사용하는 경로가 일치하는 경우 특정 스타일 혹은 CSS 클래스를 적용할 수 있는 컴포넌트 사용법 NavLink에서 링크가 활성화 되었을 때, 스타일을 적용할 때는 activeStyle 값을 CSS 클래스를 적용할 때는 activeClassName 값을 props로 넣어 주면 된다. https://yumyumlog.tistory.com/232

2021년 10월 26일
·
0개의 댓글
·
post-thumbnail

[React #8] React-Router로 SPA 구현하기

SPA SPA(Single Page Application)은 페이지가 1개인 어플리케이션을 뜻한다. HTML에서는 페이지 수만큼 HTML 파일이 존재하지만, React에서 .html 파일의 개수는 1개다. 즉, React는 SPA 기반으로 작동된다. 한 웹페이지 안에서 여러 개의 페이지를 보여줄 때 라우팅(routing)이 필요하다. 참고: https://velopert.com/3417 Routing / React Router 라우팅이란 다른 경로(url 주소)에 따라 다른 화면(view)을 보여주는 것을 의미한다. React에 내장되어 있지 않은 Third-party library로 React-router는 React의 라우팅 기능을 위해 가장 많이 사용하는 라이브러리다. Router는 컴포넌트 URL에서 서버에 들어오는 클라이언트의 request 경로를 결정해 '보고싶은 부분만 변화'시켜 준다. react-router 설치 `

2021년 10월 12일
·
0개의 댓글
·
post-thumbnail

라우팅(페이지) 이동: Link, NavLink, Redirect

react-router-dom을 이용해 라우팅 이동하기 Link -a tag: 앱을 새로고침하면서 경로를 이동합니다. -브라우저의 주소를 바꾸고,맞는 Route 로 화면을 변경합니다. -import { Link } from 'react-router-dom'; 한다. NavLink -activeClassName, activeStyle 처럼 active 상태에 대한 스타일 지정이 가능합니다. -Route 의 path 처럼 동작하기 때문에 exact 가 있습니다. -match !== null 을 해주는 이유는 match 객체가 지정된 match 즉 about이 아닐 경우 null 이 들어가고 about 일 경우 객체가 들어가는데 이 확인이 없다면 location의 정보만 갖고 active처리가 되어 버린다. Redirect Redirect가 render되면 to가 가리키는 방향으로 redirect 한다. JS 로 라우팅 이동하기 -props

2021년 9월 14일
·
0개의 댓글
·
post-thumbnail

[React] 리액트 라우터로 SPA 개발하기

1. SPA란? SPA는 Single Page Application(싱글 페이지 애플리케이션)의 약어입니다. 말 그대로 한 개의 페이지로 이루어진 애플리케이션이라는 의미입니다. 기존에는 사용자가 다른 페이지로 이동할 때마다 새로운 html을 받아 왔습니다. 리액트 같은 라이브러리 혹은 프레임워크를 시용하면 뷰 렌더링을 사용자의 브라우저가 담당하도록 하고, 사용자와의 인터랙션이 발생하면 필요한 부분만 자바스크립트를 사용하여 업데이트해 줍니다. 만약 새로운 데이터가 필요하다면 서버 API를 호출하여 필요한 데이터만 새로 불러와 애플리케이션에서 사용할 수 있습니다. SPA의 경우 서버에서 사용자에게 제공하는 페이지는 한 종류이지만 해당 페이지에서 로딩된 자바스크립트와 현재 사용자 브라우저의 주소 상태에 따라 다양

2021년 7월 12일
·
0개의 댓글
·
post-thumbnail

React Router 2

Router 안에 Props URL 파라미터(Parameter)와 쿼리(Query) 파라미터 예시: /profiles/velopert 쿼리 예시: /about?details=true URL URL 파라미터는 라우트로 사용되는 컴포넌트에서 받아오는 match의 params를 참조한다. > profiles/:username 이라고 route path 를 설정해 주면 match.params.username 값을 통해 username 값을 참조하여 가져온다. URL 쿼리 쿼리는 location 객체에 들어있는 search 값을 조회 할 수 있음. 기초적인 사용방법? ![](https://images.velog.io/images/cyongchoi

2020년 6월 16일
·
0개의 댓글
·

React Router

React Router > React Router 란, SPA(Single Page Application: 모든코드를 하나의 파일에서 관리) 의 라우팅 문제를 보완할 수 있도록 코드의 모듈화를 가능하게 해주는 라이브러리 입니다. 서로 다른 주소를 가진 view 를 만들어 관리합니다. 즉, component 마다 다른 url 을 호출하여 화면을 부르 있도록 합니다. function 방식인 Hooks 를 적용했습니다. 예제에 대한 클래스 트리입니다. >public    ㄴindex.html src    ㄴ components        ㄴ Header.js        ㄴ Recipe.js        ㄴ RecipeDetail.js   &

2020년 6월 1일
·
0개의 댓글
·