小程序全局变量管理-mobx引入与使用

这篇具有很好参考价值的文章主要介绍了小程序全局变量管理-mobx引入与使用。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

背景:

对于全局变量操作,如果不规范使用很容易产生意想不到的问题,使用mobx对全局变量进行管理,能够规范代码操作,使程序变得简单高效。

代码使用:

1)定义全局变量

import { action, observable } from 'mobx-miniprogram'

export const testStore = observable({
  // 数据
  count: 0,
  // action
  add: action(function() {
    // 添加监听
    this.count = this.count + 1
  })
})

2)页面1中引用 该变量

page1.ts

// pages/page1/page1.ts
import { testStore } from "../../store/test";
import { createStoreBindings } from "mobx-miniprogram-bindings";
Page({

  /**
   * 页面的初始数据
   */
  data: {

  },
  handleJumpTo() {
    console.log("跳转")
    // wx.redirectTo({
    //   url: '/packageA/pages/page1/page1'
    // })
    wx.navigateTo({
      url: '/packageA/pages/page1/page1'
    })
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad() {
    createStoreBindings(this,{
      store: testStore,
      fields: ['count']
    })
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})

page1.wxml

<view class="page1">
  <view bind:tap="handleJumpTo">跳转page2</view>
  <view>全局变量:{{count}}</view>
</view>

3)页面2中更改该变量。

// packageA/pages/page1/page1.ts
import { testStore } from '../../../store/test'
import { createStoreBindings } from "mobx-miniprogram-bindings";
Page({

  /**
   * 页面的初始数据
   */
  data: {

  },
  handleBack() {
    wx.navigateBack({})
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad() {
    createStoreBindings(this,{
      store: testStore,
      fields: ['count'],
      actions: ['add']
    })
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})
<!--packageA/pages/page1/page1.wxml-->
<view>
  <view bind:tap="add">更改全局变量</view>
  <view>全局变量:{{count}}</view>
  <view bind:tap="handleBack">返回查看全局变量</view>
</view>

4)测试。页面1跳转至页面2,页面点击更改变量后返回页面1,全局变量同步发生了变化。

小程序全局变量管理-mobx引入与使用,小程序,javascript,前端文章来源地址https://www.toymoban.com/news/detail-827082.html

到了这里,关于小程序全局变量管理-mobx引入与使用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • #Uniapp:引入fonts&目录结构&全局样式&启动模式&全局变量

    uni-app 运行到微信开发者工具需要注意 小程序路径需要配置, 小程序端口需要开启 目录结构 开发规范 遵循vue和小程序混合 全局配置样式 全局 pages.json 局部的样式会覆盖全局的样式 https://uniapp.dcloud.net.cn/collocation/pages#style 可以单独设置h5的样式 tabBar tabBar 中的 list 是一个数

    2024年01月24日
    浏览(37)
  • 微信小程序 使用全局变量

    微信小程序里面有个 app.js ,我们可以在这个里面设置全局变量, 全局变量的定义:  globalData: {         userInfo: null,         tempFilePathslist: []     }  全局变量的获取: 在 app.js 文件中,直接使用,如: var gettempFilePathslist = this.globalData.tempFilePathslist 在 其他非app

    2024年02月02日
    浏览(44)
  • 史上最详细的vite引入scss全局变量详解

    我们经常因为某些变量不能全局引入而头疼如麻,尤其是在做一些统一样式的时候,简直是噩梦,而且网上乱七八糟的文章很多很多,但是真正教你配置的没几个,因为很多都是复制过来的,有些人为了赶时间随便复制一下,这里将为你提供史上最详细的引入流程 第三步:创

    2024年02月16日
    浏览(35)
  • 详解uniapp的全局变量实现方式_javascript技巧

    本文整理了一些uniapp全局变量的实现方式,细节知识来自于uView官网中对uniapp中的全局变量实现,感兴趣的同学可以前往uView官网搜索vuex进行查看 一般来说在uniapp中有以下几种方式 本地存储 配置文件 挂载到 Vue.prototype globalData vuex 下面对这5种方式的实现进行介绍 永久存储,

    2024年02月07日
    浏览(38)
  • JavaScript保留字和预定义的全局变量及函数汇总

    保留字也称,每种语言中都有该语言本身规定的一些,这些都是该语言的语法实现基础,JavaScript中规定了一些标识符作为现行版本的或者将来版本中可能会用到的,所以当我们定义标识符时就不能使用这些了,下面介绍下JavaScript保留

    2024年01月16日
    浏览(59)
  • React中使用mobx管理状态数据使用样例

    MobX 是一个身经百战的库,它通过运用透明的函数式响应编程(Transparent Functional Reactive Programming,TFRP)使状态管理变得简单和可扩展。官网地址:关于 MobX | MobX中文文档 | MobX中文网 mobx-react-lite是一个mobx和react建立链接的依赖库,也必须安装才可以使用 并使用store/index.js统一

    2024年02月13日
    浏览(51)
  • 【微信小程序】将 token 配置为全局变量,使用定时器来检测 token 过期

    在微信小程序中,你可以将 token 配置为全局变量,并使用定时器来检测 token 是否过期。当 token 过期时,将其设置为 null。 首先,在 app.js 文件中定义一个全局变量 token,并设置初始值为 null,例如: 接下来,在获取 token 的函数中,将获取到的 token 设置为全局变量,并开启一

    2024年02月15日
    浏览(51)
  • 若依vue前端有全局用户信息变量吗

    \\\"若依\\\"是一个基于SpringBoot和Vue的前后端分离的开源项目。在前端Vue部分,全局用户信息通常保存在Vuex中,Vuex是Vue.js的状态管理模式。它提供了一个集中式存储来管理所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化。 在若依系统中,全局用户信息通常

    2024年02月14日
    浏览(37)
  • 微信小程序:Mobx的使用指南

    微信小程序中有时需要进行全局状态管理,这个时候就需要用到Mobx.下面我们来看一下在小程序中是如何使用Mobx的 根目录下新建store文件夹,新建store.js文件

    2024年02月12日
    浏览(47)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包