>  기사  >  위챗 애플릿  >  WeChat 개발 소개 (11) 이전 페이지의 데이터 업데이트

WeChat 개발 소개 (11) 이전 페이지의 데이터 업데이트

零下一度
零下一度원래의
2017-05-24 10:03:551661검색

작은 프로그램 개발 중에 현재 페이지 데이터를 이전 페이지로 전달해야 하는 경우가 종종 있는데 wx.navigateBack()이 데이터를 전달할 수 없습니다.

일반적인 방법은 현재 페이지 데이터를 로컬 캐시에 넣은 다음 이전 페이지를 캐시에서 꺼내는 것입니다.

또한 페이지 스택을 영리하게 활용하는 또 다른 방법이 있습니다.

getCurrentPages() 함수는 현재 페이지 스택의 인스턴스를 가져오는 데 사용되며 스택 순서대로 배열 형태로 제공됩니다. 마지막 요소는 현재 페이지입니다.

여기서 핵심은 현재 페이지에서 이전 페이지의 인스턴스 객체를 가져온 뒤 해당 객체의 메소드를 호출해 데이터 전송을 완료한다는 점이다.

페이지 A

Page({
     data: {
        name: ''
     },
     ...     ,
     //更新name
     changeData: function(name){
        this.setData({
            name: name      
              })   
                }})

페이지 B에 이름을 입력할 수 있는 텍스트 상자가 있다고 가정하고 돌아가기 버튼을 클릭하면 페이지 A

Page({
    //此方法用于文本框输入回调
    inputTyping: function (e) {
        //获取页面栈
        var pages = getCurrentPages();
        if(pages.length > 1){
            //上一个页面实例对象
            var prePage = pages[pages.length - 2];
            //关键在这里
            prePage.changeData(e.detail.value)        }
    }})

의 이름이 업데이트됩니다. 이전 페이지의 경우 페이지 A는 wx.navigateTo를 사용하여 페이지 B로 이동해야 하며 wx.redirectTo를 사용할 수 없습니다. 이렇게 하면 이전 페이지가 닫히고 페이지 B가 해당 정보를 얻을 수 없게 됩니다. 이전 페이지 페이지 인스턴스.

[관련 추천]

1. 위챗 공개계정 플랫폼 소스코드 다운로드

2.위챗 투표 소스코드

3.

WeChat Lala Takeaway 2.2.4는 WeChat Rubik's Cube 소스 코드의 오픈 소스 버전을 해독합니다

위 내용은 WeChat 개발 소개 (11) 이전 페이지의 데이터 업데이트의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.