Cet article présente principalement des informations pertinentes sur la méthode de mise en œuvre du renvoi de pages à plusieurs niveaux dans l'applet WeChat. J'espère que cet article pourra aider tout le monde à réaliser une telle fonction. Les amis dans le besoin pourront s'y référer
<.>Méthode de mise en œuvre pour revenir aux pages multi-niveaux dans l'applet WeChat
Dans le développement de l'applet WeChat, le retour à la page précédente est une opération très courante. Les plus courantes consistent à cliquer sur le retour. du téléphone et cliquez sur Le bouton défini revient à la page précédente dans les deux cas. Nous n'avons besoin d'effectuer aucun traitement lorsque nous cliquons sur le bouton de retour du téléphone. S'il s'agit d'un bouton personnalisé pour obtenir l'effet de retour, nous devons appeler l'API fournie par WeChat :wx.navigateBack(OBJECT)
//在C页面内 navigateBack,将返回A页面,delta = 1 时与 wx.navigateBack() 效果一致 wx.navigateBack({ delta: 2 })
Méthode 1 : Appelez wx.navigateBack() dans la méthode onUnload de la page C, afin de pouvoir revenir à la page A, mais il y aura un problème. Si vous partagez la page C dans une session de discussion WeChat, puis fermez l'applet, puis ouvrez la page C à partir de la session de discussion, la méthode wx.navigateBack() sera appelée et cette exception sera signalée :
WAService.js:9 navigateBack with an unexist webviewId 0
Méthode 2 : Une autre méthode consiste à appeler wx.navigateBack() dans la méthode onShow de la page B pour implémenter le retour, afin d'éviter les problèmes de la première méthode. L'idée d'implémentation est la suivante :
① Dans la méthode onUnload de la page C, déterminez si les n premières pages peuvent être renvoyées. La pile de pages actuelle peut être obtenue via la méthode getCurrentPages(), et le nombre de. les calques qui peuvent être renvoyés sont déterminés en fonction de la longueur de la pile de pages et peuvent définir des paramètres pour les données de toutes les pages. Voici un exemple de retour aux deux pages précédentes ://这里是页面C的 onUnload 方法 onUnload: function() { var that = this //判断页面栈里面的页面数是否大于2 if(getCurrentPages().length > 2) { //获取页面栈 let pages = getCurrentPages() //给上一个页面设置状态 let curPage = pages[pages.length - 2]; let data = curPage.data; curPage.setData({'isBack': true}); } },
//这里是页面B的 onShow 方法 onShow: function() { var that = this //如果 isBack 为 true,就返回上一页 if(that.data.isBack) { wx.navigateBack() } },
Comment résoudre le problème que le mini programme WeChat rencontre le problème que la page ne s'affiche pas après la modification des données
Mini programme WeChat Comment revenir à la page d'accueil de la page de partage du programme
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!