이 기사는 h5를 사용하여 반응 드래그 앤 드롭 정렬 구성요소(코드 포함)를 구현하는 방법에 대한 것입니다. 필요한 친구가 참고할 수 있기를 바랍니다. 당신에게.
드래그 앤 드롭 정렬 컴포넌트 Github 주소: https://github.com/VicEcho/VD...
react.js 기술 스택을 사용하기 때문에, 포장에는 입출력이 우선적으로 부여됩니다. 페이지를 렌더링하고 데이터 드라이브에 따라 요소를 드래그하는 순서를 제어합니다.
IE8 등 이전 버전의 브라우저와의 호환성을 고려하지 않기 때문에 드래그 앤 드롭 효과는 HTML5 드래그 앤 드롭(Drag and drop)을 사용합니다. 물론, 풍부한 호환성이 필요하다면 마우스 클릭 관련 이벤트를 활용하는 것도 매우 간단합니다.
얻은 효과는 다음과 같습니다.
첫 번째 단계는 H5를 이해하는 것입니다. 드래그 앤 드롭 관련 속성, MDN에 대한 자세한 지침이 있습니다. 링크는 https://developer.mozilla.org...
한 가지 주목해야 할 점은 React.js가 모든 속성 이벤트 이름 앞에 ""를 추가한다는 것입니다. on"에 이어 낙타 케이스 쓰기가 이어졌습니다. 예를 들어 네이티브 클릭 이벤트의 경우 onClick 이벤트를 React.js에서 사용해야 합니다.
내 구성 요소에서 사용하는 드래그 앤 드롭 속성은 다음과 같습니다.
draggable true로 설정하면 현재 컨트롤을 드래그할 수 있습니다. # 🎜🎜#
- onDragStart는 컨트롤이 드래그되기 시작할 때 발생하는 이벤트입니다. 다른 개체에서 쉽게 호출할 수 있도록 필요한 데이터를 개체에 저장하는 dataTransfer.setData() 메서드를 제공합니다. method#🎜🎜 # onDragOver는 현재 컨트롤이 드래그된 구성요소를 받을 수 있는 방법을 지정합니다. 일반적으로 이 방법에서는 버블링이 방지됩니다.
- onDragEnter는 드래그 후 마우스가 다른 허용 영역에 들어갈 때 트리거되며 이를 통해 이동 효과를 얻을 수 있습니다.
- onDragLeave는 a를 b로 드래그할 때 트리거됩니다. b를 떠날 때 트리거됩니다. 이동 효과 제거 타이밍을 모니터링하는 데 사용할 수 있습니다
- onDrop은 컨트롤이 유효한 상태로 "해제"될 때 트리거됩니다. 이 메서드에서 데이터를 처리하고 전달합니다. onChange 메서드를 호출하고 값을 상위 구성 요소에 노출합니다. onDrop은 "드래그된" 당사자가 설정해야 하는 속성입니다. 하지만 드래그 앤 드롭 정렬 구성 요소의 경우 각 요소를 드래그 앤 드롭합니다
-
두 번째 단계는 "she"가 React.js의 구성 요소이므로 사용자 정의에 따라 간단히 입력합니다. 속성은 다음과 같습니다. 동시에 onChange 이벤트가 노출되어 값의 변경 사항을 수신하고 상위 구성 요소에 노출되어 정렬 필드로 사용할 키를 구성 요소에 알려줍니다.
정렬이 포함되고 구성 요소 각 요소의 내부 하위 구성 요소를 지정할 수 있으므로 입력 데이터 형식을 배열 객체로 정의합니다. 여기서 콘텐츠는 반응 노드가 될 수 있습니다.
value: [ { content: 'p1', code: '01', sort: 0, }, { content: 'p2', code: '02', sort: 1 }, { content: 'p3', code: '03', sort: 2 }, { content: 'p5', code: '05', sort: 5 }, { content: 'p4', code: '04', sort: 4 }]
// 生成拖拽组件 createDraggleComponent(data, sortKey, style, uId) { return data.sort(this.compare(sortKey)).map((item) => { return ( <p>{item.content}</p> ) }) } render() { const { value, sortKey, style } = this.props; return ( <row> <p> {this.createDraggleComponent(value, sortKey, style)} </p> </row> ) }속성 메서드의 구체적인 구현:
// 拖动事件 domdrugstart(sort, code, ee) { ee.dataTransfer.setData("code", code); ee.dataTransfer.setData("sort", sort); } // 拖动后鼠标进入另一个可接受区域 dragenter(ee) { ee.target.style.border = '2px dashed #008dff'; ee.target.style.boxShadow = '0 0 8px rgba(30, 144, 255, 0.8)'; } // a拖到b,离开b的时候触发 dragleave(ee) { ee.target.style.border = '1px solid grey'; ee.target.style.boxShadow = ''; } // 对象排序 compare(key) { return (obj1, obj2) => { if (obj1[key] obj2[key]) { return 1; } return 0 } } // 当一个元素或是选中的文字被拖拽释放到一个有效的释放目标位置时 drop(dropedSort, data, sortKey, ee) { ee.preventDefault(); const code = ee.dataTransfer.getData("code"); const sort = ee.dataTransfer.getData("sort"); if (sort { if (item.code === code) { item[sortKey] = dropedSort; } else if (item[sortKey] > sort && item[sortKey] { if (item.code === code) { item[sortKey] = dropedSort; } else if (item[sortKey] > dropedSort - 1 && item[sortKey] <br>주목할 점은 단 하나뿐입니다. 순서를 제어할 때 실제로 노드를 조작하기 위해 .target.before(document.getElementById({id}))를 사용하지 않고 대신 onDrop 시간이 트리거될 때마다 데이터 정렬을 처리하여 노출시켰습니다. onChange 이벤트를 통해 상위 구성요소를 생성하고 순서를 제어하기 위해 값을 변경하여 가상 DOM을 다시 렌더링하도록 트리거합니다. <p>회사의 요구사항에 따라 이를 기반으로 드래그 앤 드롭 복사 기능도 구현했습니다. </p><p>관련 권장 사항: </p><p></p>HTML5 새 속성: classList 속성 사용 방법 <p></p><p></p>HTML5 여백 상단 붕괴 문제 해결 방법(코드 포함) <p><a href="http://www.php.cn/html5-tutorial-407974.html" target="_blank" title="HTML5新增属性:classList属性的使用方法"></a></p>HTML5의 태그와 공통 규칙은 무엇인가요? HTML5 태그 및 규칙 소개<p><a href="http://www.php.cn/html5-tutorial-407894.html" target="_blank" title="HTML5如何解决margin-top的塌陷问题(附代码)"></a></p>
위 내용은 h5를 사용하여 반응 드래그 앤 드롭 정렬 구성 요소를 구현하는 방법(코드 첨부)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

H5에 대한 고급 팁에는 다음이 포함됩니다. 1. 복잡한 그래픽 사용, 2. 웹 워크를 사용하여 성능 향상, 3. WebStorage, 4. 응답 디자인 구현, 5. WebRTC를 사용하여 실시간 커뮤니케이션을 달성하기 위해, 6. 성능 최적화 및 모범 사례를 수행하십시오. 이 팁은 개발자가보다 역동적이고 대화식 및 효율적인 웹 응용 프로그램을 구축 할 수 있도록 도와줍니다.

H5 (HTML5)는 새로운 요소와 API를 통해 웹 컨텐츠와 디자인을 개선합니다. 1) H5는 시맨틱 태깅 및 멀티미디어 지원을 향상시킵니다. 2) 웹 디자인을 풍부하게하는 캔버스 및 SVG를 소개합니다. 3) H5는 새로운 태그와 API를 통해 HTML 기능을 확장하여 작동합니다. 4) 기본 사용에는이를 사용하여 그래픽 생성이 포함되며, 고급 사용량은 WebStorageapi와 관련이 있습니다. 5) 개발자는 브라우저 호환성 및 성능 최적화에주의를 기울여야합니다.

H5는 여러 가지 새로운 기능과 기능을 제공하여 웹 페이지의 상호 작용 및 개발 효율성을 크게 향상시킵니다. 1. Enhance SEO와 같은 시맨틱 태그. 2. 멀티미디어 지원은 오디오 및 비디오 재생 및 태그를 단순화합니다. 3. 캔버스 드로잉은 역동적 인 그래픽 드로잉 도구를 제공합니다. 4. 로컬 스토리지는 LocalStorage 및 SessionStorage를 통해 데이터 스토리지를 단순화합니다. 5. Geolocation API는 위치 기반 서비스의 개발을 용이하게합니다.

HTML5는 5 가지 주요 개선 사항을 제공합니다. 1. 시맨틱 태그는 코드 선명도 및 SEO 효과를 향상시킵니다. 2. 멀티미디어 지원은 비디오 및 오디오 임베딩을 단순화합니다. 3. 형태 향상은 검증을 단순화한다. 4. 오프라인 및 로컬 스토리지는 사용자 경험을 향상시킵니다. 5. 캔버스 및 그래픽 기능은 웹 페이지의 시각화를 향상시킵니다.

HTML5의 핵심 기능에는 시맨틱 태그, 멀티미디어 지원, 오프라인 저장 및 로컬 스토리지 및 형태 향상이 포함됩니다. 1. 코드 가독성 및 SEO 효과를 향상시키는 시맨틱 태그 등. 2. 레이블로 멀티미디어 임베딩을 단순화하십시오. 3. ApplicationCache 및 LocalStorage와 같은 오프라인 스토리지 및 로컬 스토리지는 네트워크없는 작동 및 데이터 저장을 지원합니다. 4. 양식 향상은 처리 및 검증을 단순화하기 위해 새로운 입력 유형 및 검증 속성을 도입합니다.

H5는 다양한 새로운 기능과 기능을 제공하여 프론트 엔드 개발 기능을 크게 향상시킵니다. 1. 멀티미디어 지원 : 미디어를 포함하고 요소를 포함하여 플러그인이 필요하지 않습니다. 2. 캔버스 : 요소를 사용하여 2D 그래픽 및 애니메이션을 동적으로 렌더링합니다. 3. 로컬 스토리지 : LocalStorage 및 SessionStorage를 통해 지속적인 데이터 저장을 구현하여 사용자 경험을 향상시킵니다.

H5 및 HTML5는 다른 개념입니다. HTML5는 새로운 요소 및 API를 포함하는 HTML의 버전입니다. H5는 HTML5를 기반으로 한 모바일 애플리케이션 개발 프레임 워크입니다. HTML5는 브라우저를 통해 코드를 구문 분석하고 렌더링하는 반면 H5 응용 프로그램은 컨테이너를 실행하고 JavaScript를 통해 기본 코드와 상호 작용해야합니다.

HTML5의 주요 요소에는 최신 웹 페이지를 작성하는 데 사용되는 ,,,,, 등이 포함됩니다. 1. 헤드 컨텐츠 정의, 2. 링크를 탐색하는 데 사용됩니다. 3. 독립 기사의 내용을 나타내고, 4. 페이지 내용을 구성하고, 5. 사이드 바 컨텐츠 표시, 6. 바닥 글을 정의하면, 이러한 요소는 웹 페이지의 구조와 기능을 향상시킵니다.


핫 AI 도구

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

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

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

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

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

에디트플러스 중국어 크랙 버전
작은 크기, 구문 강조, 코드 프롬프트 기능을 지원하지 않음

Atom Editor Mac 버전 다운로드
가장 인기 있는 오픈 소스 편집기

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 영어 버전
권장 사항: Win 버전, 코드 프롬프트 지원!
