리액트 프론트엔드 라우팅과 백엔드 라우팅의 차이점: 1. 프론트엔드 라우팅은 "react-router"의 Link 태그를 통해 트리거되고 백엔드 라우팅은 ajax를 통해 트리거됩니다. 라우팅은 브라우저 이벤트 모니터링을 기반으로 하고 백엔드 라우팅은 http 통신 프로토콜을 기반으로 합니다. 3. 프런트엔드 라우팅은 부분 렌더링을 달성할 수 있는 반면 백엔드 라우팅은 전체 페이지를 다시 렌더링할 수 있습니다.
이 튜토리얼의 운영 환경: Windows 10 시스템, 반응 버전 17.0.1, Dell G3 컴퓨터.
React에서 프론트엔드 라우팅과 백엔드 라우팅의 차이점은 무엇인가요?
백엔드 라우팅의 메커니즘
백엔드를 아는 학생들은 백엔드 라우팅이 백엔드 라우팅이라는 것을 알고 있습니다. end는 app.js에 백엔드 라우팅 기능을 등록하고, 프런트엔드 전달 ajax는 해당 라우팅 콜백 기능을 트리거합니다(Express를 예로 사용)
Trigger: ajax
Response: app.get('/router' ,콜백)
원리: http 통신 프로토콜 기반
//app.js app.get('/', (request, response) => { let ret = { "success": true, "code": 200, "message": "", "data": [], } response.send(ret) })
프런트엔드 라우팅 메커니즘
프런트엔드 라우팅(react-router를 지칭함)은 프런트엔드가 프런트엔드 라우팅 및 구성 요소를 등록한다는 것입니다. front-end는 Link에 의해 설정된 경로를 사용하거나 브라우저에 해당 경로를 입력하여 구성 요소 렌더링을 발생시킵니다.
Trigger: React-router Link tag
Response: Rout 태그에서 해당 구성 요소를 렌더링합니다.
원리: 브라우저의 해시(React-Router v2 이전), 기록(React-Router v4)을 기반으로 합니다.
//index.js class ListContent extends Component { constructor(props){ super(props); this.state = { } } render() { return ( <Row> <Button> + <Link to="/topic"> 发布话题 </Link> </Button> </Row> ); } } //router.js <Router> <div> <Header/> <Switch> <Route exact path="/" component={index} /> <Route exact path="/topic" component={topic} /> </Switch> </div> </Router>
헤더 구성 요소는 항상 router.js에 존재합니다. 페이지에서 Switch 태그의 구성 요소는 트리거되지 않은 컴포넌트는 null이고 표시되지 않는다는 점을 간단히 이해하면
부분 렌더링을 형성합니다
//若触发前端路由'/topic',则index组件不渲染 <Router> <div> <Header/> <Switch> <Route exact path="/" component={null} /> <Route exact path="/topic" component={topic} /> </Switch> </div> </Router>
프론트엔드 라우팅과 백엔드 라우팅의 차이점
프론트 -엔드 라우팅은 브라우저 이벤트 모니터링을 기반으로 하며 http 통신 프로토콜을 통과하지 않습니다.
프런트 엔드 라우팅은 부분적으로 렌더링되고 백엔드는 전체 페이지를 다시 렌더링합니다. 상대적으로 프런트 엔드 라우팅 경험이 더 좋습니다.
[관련 추천: javascript 비디오 튜토리얼, 웹 프론트엔드 ]
위 내용은 반응 프론트엔드 라우팅과 백엔드 라우팅의 차이점은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

在react中,canvas用于绘制各种图表、动画等;可以利用“react-konva”插件使用canvas,该插件是一个canvas第三方库,用于使用React操作canvas绘制复杂的画布图形,并提供了元素的事件机制和拖放操作的支持。

在react中,antd是基于Ant Design的React UI组件库,主要用于研发企业级中后台产品;dva是一个基于redux和“redux-saga”的数据流方案,内置了“react-router”和fetch,可理解为应用框架。

React不是双向数据流,而是单向数据流。单向数据流是指数据在某个节点被改动后,只会影响一个方向上的其他节点;React中的表现就是数据主要通过props从父节点传递到子节点,若父级的某个props改变了,React会重渲染所有子节点。

因为在react中需要利用到webpack,而webpack依赖nodejs;webpack是一个模块打包机,在执行打包压缩的时候是依赖nodejs的,没有nodejs就不能使用webpack,所以react需要使用nodejs。

在react中,forceupdate()用于强制使组件跳过shouldComponentUpdate(),直接调用render(),可以触发组件的正常生命周期方法,语法为“component.forceUpdate(callback)”。

react是组件化开发;组件化是React的核心思想,可以开发出一个个独立可复用的小组件来构造应用,任何的应用都会被抽象成一颗组件树,组件化开发也就是将一个页面拆分成一个个小的功能模块,每个功能完成自己这部分独立功能。

react和reactdom的区别是:ReactDom只做和浏览器或DOM相关的操作,例如“ReactDOM.findDOMNode()”操作;而react负责除浏览器和DOM以外的相关操作,ReactDom是React的一部分。

react与vue的虚拟dom没有区别;react和vue的虚拟dom都是用js对象来模拟真实DOM,用虚拟DOM的diff来最小化更新真实DOM,可以减小不必要的性能损耗,按颗粒度分为不同的类型比较同层级dom节点,进行增、删、移的操作。


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

맨티스BT
Mantis는 제품 결함 추적을 돕기 위해 설계된 배포하기 쉬운 웹 기반 결함 추적 도구입니다. PHP, MySQL 및 웹 서버가 필요합니다. 데모 및 호스팅 서비스를 확인해 보세요.

MinGW - Windows용 미니멀리스트 GNU
이 프로젝트는 osdn.net/projects/mingw로 마이그레이션되는 중입니다. 계속해서 그곳에서 우리를 팔로우할 수 있습니다. MinGW: GCC(GNU Compiler Collection)의 기본 Windows 포트로, 기본 Windows 애플리케이션을 구축하기 위한 무료 배포 가능 가져오기 라이브러리 및 헤더 파일로 C99 기능을 지원하는 MSVC 런타임에 대한 확장이 포함되어 있습니다. 모든 MinGW 소프트웨어는 64비트 Windows 플랫폼에서 실행될 수 있습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)
