위챗 애플릿 통신 방식 ----5가지
1, 형제 간 2, 아버지 페이지 점프 하위 페이지 3, 하위 페이지 점프 아버지 페이지
활성화 시기
1. 지연 활성화는 현재 페이지의 시간 응답이 완성된 후에 의존 페이지를 터치합니다
2. 현재 페이지 응답을 즉시 활성화하기 전에 의존 페이지를 터치합니다
다섯 가지 통신 방식
1、onShow/onHide + localStorage
wx.getStorageSync(' data')//가져오기
wx.clearStorageSync(' data')//마지막 통신 데이터 지우기
wx.setStorageSync(' data')//통신 데이터 설정
통신 데이터를 지우는 것을 기억해라. 그렇지 않으면 문제가 생길 수 있다
localStorage에서 읽기에 실패하여 통신에 실패할 수 있음
페이지 초기화도 onShow를 터치합니다
2、onShow/onHide + globalData
app = getApp()
app.$$data.XX = null//마지막 통신 데이터 지우기
app.$$data.XX = XX//통신 데이터 설정
글로벌 데이터 오염
페이지 초기화도 onShow를 터치합니다
3. 이벤트 Bus(또는pubsub) 이벤트 게시 구독
on emit off
4、globalData + watcher
oba 소스 라이브러리 사용하기
oba(app.$$data,(prop,newVal,oldVal)=>{
})
데이터 드라이브라고 하죠.
5, 공통 hack 직접 호출 통신 페이지 방법 추천
// plugin/pages.js
// pageModel,
export default class PM {
constructor() {
this.$$cache = {};
}
add(pageModel) {
let pagePath = this._getPageModelPath(pageModel);
this.$$cache[pagePath] = pageModel;
}
get(pagePath) {
return this.$$cache[pagePath];
}
delete(pageModel) {
try {
delete this.$$cache[this._getPageModelPath(pageModel)];
} catch (e) {
}
}
_getPageModelPath(page) {
//
return page.__route__;
}
}
// pageA
let app = getApp();
Page({
data: {
helloMsg: 'hello from PageA'
},
onLoad() {
app.pages.add(this);
},
goC() {
wx.navigateTo({
url: '/pages/c/c'
});
},
sayHello(msg) {
this.setData({
helloMsg: msg
});
}
});
//pageC
let app = getApp();
Page({
doSomething() {
//
app.pages.get('pages/a/a').sayHello('hello u3xyz.com');
}
});
app.pages.add()
app.pages.get('경로').fn('xxx')
고마워요 고마워요https://segmentfault.com/a/1190000008895441이 작가가 도움을 줍니다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
유니앱, 위챗 애플릿에서 MQTT 사용 문제(1)MQTT.js는 JavaScript로 작성된 MQTT 프로토콜의 클라이언트 라이브러리로 Node에 사용할 수 있습니다.js와 브라우저.노드에서.js단은 전역 설치를 통해 명령행 연결을 사용할 수 있으며 MQTT...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.