uniapp에서 요소의 높이를 얻는 방법
uniapp을 사용하여 프로젝트를 개발하는 과정에서 목록 항목의 높이를 동적으로 계산하고 구성 요소의 최소 높이를 설정하는 등 해당 작업 및 레이아웃을 수행하기 위해 요소의 높이를 얻어야 하는 경우가 종종 있습니다. 그렇다면 uniapp에서 요소의 높이를 얻는 방법은 무엇입니까?
방법 1: uni.createComponent()
uniapp에서는 uni.createComponent()를 사용하여 사용자 정의 구성 요소를 동적으로 생성합니다. 커스텀 컴포넌트의 라이프사이클 함수에서 uni.createSelectorQuery() 메소드를 사용하면 요소의 높이, 너비 등 요소 노드의 정보를 얻을 수 있습니다.
예를 들어 div 요소의 높이를 가져옵니다.
사용자 정의 구성 요소의 생성된 수명 주기 함수에서 uni.createSelectorQuery() 메서드를 사용하여 요소 정보를 가져올 수 있습니다.
<template> <div class="component"> <div class="content" ref="content"> 我是一个自定义组件 </div> </div> </template> <script> export default { created () { // 获取元素的信息 uni.createSelectorQuery().in(this).select('.content').boundingClientRect((rect) => { console.log('元素高度为:' + rect.height) }).exec() } } </script> <style> .component { width: 100%; height: 100%; } .content { width: 100px; height: 100px; background-color: red; } </style>
위 코드에서 ref를 사용해 div 요소에 대한 참조를 가져온 후, 생성된 라이프 사이클 함수에서 uni.createSelectorQuery() 메서드를 사용해 해당 요소의 정보를 쿼리합니다. 그 중 select('.content')는 클래스가 content인 요소를 조회한다는 의미이고,boundingClientRect() 메소드는 해당 요소의 크기 정보를 조회한다는 의미이며, 콜백 함수에서 반환되는 ect는 위치를 포함하는 객체입니다. 요소의 크기 및 기타 정보.
방법 2: uni.pageScrollTo()
경우에 따라 페이지 요소의 높이를 가져와야 하며 이는 uni.pageScrollTo() 메서드를 사용하여 얻을 수 있습니다. 구체적인 코드는 다음과 같습니다.
<template> <div class="component"> <div class="content" ref="content"> 我是一个自定义组件 </div> </div> </template> <script> export default { mounted () { // 获取页面中元素的高度 uni.pageScrollTo({ selector: '.content', success: (res) => { console.log('元素高度为:' + res[0].top) } }) } } </script> <style> .component { width: 100%; height: 100%; } .content { width: 100px; height: 100px; background-color: red; } </style>
위 코드에서는 탑재된 라이프사이클 함수를 사용하고, 페이지 렌더링이 완료된 후 uni.pageScrollTo() 메서드를 사용합니다. selector: '.content'는 클래스 콘텐츠가 포함된 요소를 쿼리하는 것을 의미합니다. 성공 콜백 함수의 res는 요소 정보를 얻을 수 있습니다. 여기서 res[0].top은 요소와 페이지 상단 사이의 거리를 의미합니다.
요약:
위의 두 가지 방법 중 전자는 사용자 정의 구성 요소의 요소 높이를 가져오는 데 적합하고 후자는 페이지의 요소 높이를 가져오는 데 적합합니다. 둘 다 고유한 장점과 단점이 있으며 특정 시나리오에 따라 선택할 수 있습니다. 어떤 방법을 사용하든 요소의 높이 및 기타 정보를 얻기 위해서는 해당 수명주기 함수 또는 메서드 내에 크기 정보의 콜백 함수를 추가하는 데 주의가 필요합니다.
위 내용은 uniapp에서 요소의 높이를 얻는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

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

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

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

Clothoff.io
AI 옷 제거제

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

인기 기사

뜨거운 도구

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

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

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

드림위버 CS6
시각적 웹 개발 도구

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

뜨거운 주제











이 기사는 UNI-APP의 로컬 스토리지 API (uni.setStoragesYnc (), uni.getStoragesYnc () 및 해당 비동기 상대방)에 대해 자세히 설명하고 설명 키 사용, 데이터 크기 제한 및 JSON 구문 분석 처리와 같은 모범 사례를 강조합니다. 그것은 lo를 강조합니다

이 기사는 직접 API 지원이 부족하여 UniAPP에서 다운로드 된 파일을 바꾸기위한 해결 방법에 대해 자세히 설명합니다. Android/iOS에는 사후 다운로드 라이닝 용 기본 플러그인이 필요하고 H5 솔루션은 파일 이름을 제안하는 것으로 제한됩니다. 과정에는 시간이 포함됩니다

이 기사는 UniAPP 다운로드에서 파일 인코딩 문제를 다룹니다. 서버 측 컨텐츠 유형 헤더의 중요성과 이러한 헤더를 기반으로 클라이언트 측 디코딩에 JavaScript의 TextDecoder를 사용합니다. 공통 인코딩 프로브를위한 솔루션

이 기사는 Uni.getLocation ()에 중점을 둔 UNI-APP의 지리 위치 API에 대해 자세히 설명합니다. 잘못된 좌표 시스템 (GCJ02 vs. WGS84) 및 권한 문제와 같은 일반적인 함정을 다룹니다. 평균 판독 값 및 핸들링을 통해 위치 정확도 향상

이 기사는 UNI-APP의 국가 관리를 위해 Vuex와 Pinia를 비교합니다. Pinia의 단순성과 Vuex의 구조를 강조하는 기능, 구현 및 모범 사례를 자세히 설명합니다. 선택은 Pinia Suita와 함께 프로젝트 복잡성에 달려 있습니다

이 기사는 UNI.Request 또는 Axios를 사용하여 UNI-APP 내에서 API 요청을 작성하고 보호합니다. JSON 응답 처리, 최상의 보안 관행 (HTTPS, 인증, 입력 검증), 문제 해결 장애 (네트워크 문제, CORS, S

이 기사에는 Uni.share API를 사용하여 소셜 공유를 UNI-APP 프로젝트에 통합하는 방법에 대해 자세히 설명합니다. Share API, WeChat 및 Weibo와 같은 플랫폼에서 설정, 구성 및 테스트를 다룹니다.

이 기사에서는 Uni-App의 Easycom 기능, 구성 요소 등록 자동화를 설명합니다. Autoscan 및 사용자 정의 구성 요소 매핑을 포함한 구성에 대해 자세히 설명하고, 보일러 플레이트 감소, 속도 향상 및 가독성 향상과 같은 이점을 강조 표시합니다.
