在微信小法式的开辟中,我们会经常碰到页面间数据传递或者彼此影响的问题。在现实的开辟过程中,可以经由过程以下几种方式来实现。
全局变量现实上是界说了一个全局的对象,并在每个页面中引入。在初始化代码的时辰,小法式会读取一个 app.js 的文件,在这里我们可以界说我们所需要的全局变量。
利用全局变量全局变量现实上是界说了一个全局的对象,并在每个页面中引入。在初始化代码的时辰,小法式会读取一个 app.js 的文件,在这里我们可以界说我们所需要的全局变量。
因为 app.js 在项目中是用来做根本设置装备摆设的,是以不建议将良多变量放在这里设置装备摆设。一般环境下会将一些持久化的常量设置装备摆设在这里,对于经常需要变更的量不建议用这个方式。
当地缓存可以将用户发生的数据做当地的持久化,近似于 NoSQL,可以进行读取和点窜的操作。那么在分歧的页面之间,若何操纵它,进行数据的交互呢?假设我们在 A 页面保留了用户的信息,如图:
如许做,这个数据就存在了当地。当在 B 页面需要利用的时辰,可以直接的获取到数据池中的数据,并进行 CRUD 操作:
需要注重的是,在回到 A 页面的时辰,小法式需要从头读取数据。这时辰,可以选择放在生命周期的 onShow 中对数据从头加载
我们凡是会在页面之间进行跳转、重定标的目的的操作,数据会从父级页面往子级页面(模板)传递。这时辰,我们可以选择将部门数据放在 url 里面,并在新页面 onLoad 的时辰进行初始化。
在 D 页面中,我们可以如许领受到到所传进来的参数:
wx.navigateTo 和 wx.redirectTo 不许可跳转到 tab 所包含的页面,只能用 wx.switchTab 跳转。需要注重的是,wx.switchTab 中的 url 不克不及传参数。
0 篇文章
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!