> 위챗 애플릿 > 미니 프로그램 개발 > 미니 프로그램 개발에서 발생하는 문제점을 요약합니다.

미니 프로그램 개발에서 발생하는 문제점을 요약합니다.

巴扎黑
풀어 주다: 2017-09-12 09:33:31
원래의
1781명이 탐색했습니다.

문제 요약:
(1) 분할선 높이로 rpx를 사용하는 문제
인접한 두 정보 사이에 직접 분할선이 생깁니다. 선 높이를 1rpx로 설정합니다. 첫 번째와 두 번째 부분은 표시되지 않지만 나머지는 모두 표시됩니다. 분할선의 속성은 동일하며, 다른 휴대폰에서는 표시되지 않는 분할선(해상도가 다름)도 다릅니다. 표시되지 않는 여러 구분선이 에뮬레이터 버그인지 rpx 버그인지 모르겠습니다. 해결책: 구분선의 높이 크기 단위는 px를 사용하여 이 문제를 해결합니다.

(2) 페이지 등록 문제
이 오류는 쉽게 이해할 수 있는 페이지 등록 오류입니다. 페이지는 Page 객체를 통해 렌더링되며, 각 페이지에 해당하는 js 파일이 페이지를 생성해야 하며, 가장 간단한 방법은 js 파일 아래에 Page({})를 작성하는 것입니다. 여기에서 데이터 처리와 이벤트가 모두 완료됩니다. 이 오류가 발생하는 이유는 일반적으로 페이지가 방금 생성되었고 js 파일이 처리되지 않았거나 잊어버렸기 때문입니다.
해결책: 페이지 생성 시 먼저 js 파일에 페이지를 생성하는 습관을 들이세요.

(3) 페이지 경로 오류
라우트에 대한 반복 호출로 인해 발생하는 해결 방법은 경로를 삭제하고 < navigator /> 구성 요소 또는 wx.navigateTo를 제거합니다.

(4) 현재 페이지에는 * 핸들이 없습니다.
사실 이런 문제는 wxml에서 일부 처리 이벤트를 정의할 때 주로 발생하는데, js 파일에 이벤트 처리 방법이 구현되어 있지 않으면 이런 문제가 발생합니다. 실수가 발생합니다. 그런 다음 프롬프트에 따라 js 파일에 이벤트 처리를 추가합니다
해결 방법: 이벤트를 호출하는 방법을 놓치지 마세요

(5) tabBar 설정이 표시되지 않습니다
tabBar가 표시되지 않는 데에는 여러 가지 이유가 있습니다. 이 오류를 찾으면 app.json 파일로 직접 이동하세요

app.json에 페이지가 등록되지 않았습니다

tabBar가 잘못 쓰여서 표시되지 않습니다. 대문자 B가 소문자로 쓰여져 tabBar가 표시되지 않습니다

pagePath 필드가 tabBar 목록에 기록되지 않았거나, pagePath 페이지가 등록되지 않았습니다.

tabBar 목록의 pagePath에 지정된 페이지가 등록 페이지에 먼저 기록되지 않았습니다. WeChat 애플릿의 논리는 "페이지"의 첫 번째 페이지가 홈페이지이며, 이는 프로그램이 시작된 후 표시되는 첫 번째 페이지입니다. tabBar 목록의 pagePath로 지정된 페이지가 페이지의 첫 번째 페이지가 아닌 경우, 물론 tabBar는 표시되지 않습니다.

tabBar 항목 수는 2개 미만 또는 5개 이상입니다. WeChat 공식에서는 tabBar에 항목이 2개 이상, 최대 5개 있어야 한다고 명시하고 있습니다. tabBar는 다음보다 크거나 작은 경우 표시되지 않습니다.

(6) wx.navigateTo는 페이지를 열 수 없습니다
애플리케이션은 동시에 5페이지만 열 수 있습니다. 5페이지가 열린 후에는 wx.navigateTo가 정상적으로 새 페이지를 열 수 없습니다. 다단계 상호작용을 피하거나 wx.redirectTo

를 사용하세요.(7) css
배경 이미지를 통해 로컬 리소스를 얻을 수 없습니다. 네트워크 이미지나 base64를 사용하거나 태그를 사용할 수 있습니다. (8) 페이지 데이터 전송

WeChat 애플릿 라우팅(페이지 점프)은 wx.navigateTo API 또는 wxml의 구성 요소를 통해 구현됩니다. 중요한 매개변수는 URL입니다. 원하는 페이지를 점프하고, 페이지 간 데이터 전송도 URL을 통해 구현됩니다. 이 데이터 전송은 우리가 사용하는 네트워크 가져오기 요청과 다소 유사하며 점프하고 연결할 인터페이스의 주소 뒤에 연결됩니다. 와 함께 "?". 그런 다음 "?" 뒤에 전달할 데이터를 키와 값의 형태로 추가하면 여러 매개변수가 "&"와 직접 일치됩니다. 이렇게 쓰면 됩니다

<navigator url="/pages/dynamic/dynamic?title={{item.title}}&message={{item.message}}">
<view class="item" >
<view class="item-left">
<image src="{{item.url}}" class="image"/>
</view>
<view class="item-middle">
<view>
<text class="title">{{item.title}}</text>
</view>
<view>
<text class="message">{{item.message}}</text>
</view>
</view>
<view class="item_right">
<view><text class="time">{{item.time}}</text></view>
<view class="mark" wx:if="{{item.count>0}}"><text class="text">{{item.count}}</text></view>
</view>
</view>
<view class="line"></view>
</navigator>
로그인 후 복사

데이터는 js 파일의 페이지에서 수신됩니다. 페이지 수명 주기에는 데이터를 초기화하는 일부 작업을 수행하는 onLoad 함수가 있으며, 우리는 이를 수행할 수 있습니다. 다음과 같이 키를 통해 데이터를 전달합니다

onLoad:function(options){
// 页面初始化 options为页面跳转所带来的参数
console.log(options.title) //这里是接收参数
console.log(options.message)
},
로그인 후 복사

이렇게 하면 페이지 간 데이터 전송 기능이 구현됩니다.

위 내용은 미니 프로그램 개발에서 발생하는 문제점을 요약합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿