uniapp存值和取值方法

在UniApp中,可以使用全局变量、本地缓存和Vuex状态管理等方式来进行存值和取值。

  1. 全局变量:可以在App.vue文件的data中定义一个全局变量,在其他页面或组件中通过uni.$emit方法修改其值,并通过uni.$on方法监听值的变化。

    // App.vue
    export default {
    data() {
    return {
    globalData: {}
    }
    }
    }

    // 页面或组件中获取全局变量
    export default {
    computed: {
    globalData() {
    return this.root.globalData; } }, methods: { updateGlobalData() { this.root.globalData = { key: value };
    }
    }
    }

  2. 本地缓存:可以使用uni.setStorageSync方法将数据存储到本地缓存中,使用uni.getStorageSync方法从本地缓存中读取数据。

    // 存值
    uni.setStorageSync('key', 'value');

    // 取值
    const value = uni.getStorageSync('key');

  3. Vuex状态管理:UniApp内置了Vuex状态管理库,可以在store目录下创建模块文件进行状态管理。通过commit方法提交一个mutation来更新状态,并通过getters获取状态值。

    // store/module.js
    const state = {
    key: value
    };

    const mutations = {
    updateValue(state, payload) {
    state.key = payload;
    };

    const actions = {
    updateValue({ commit }, payload) {
    commit('updateValue', payload);
    }
    };

    const getters = {
    getValue(state) {
    return state.key;
    };

    export default {
    state,
    mutations,
    actions,
    getters
    };

    // 页面或组件中获取状态值
    import { mapGetters, mapActions } from 'vuex';

    export default {
    computed: {
    ...mapGetters(['getValue'])
    },
    methods: {
    ...mapActions(['updateValue'])
    }
    }

以上是UniApp中存值和取值的几种常用方式,你可以根据具体需求选择合适的方法来实现。

相关推荐
moxiaoran57532 小时前
uni-app萌宠案例学习笔记--页面布局和CSS样式设置
前端·css·uni-app
moxiaoran57533 小时前
uni-app学习笔记二十九--数据缓存
笔记·学习·uni-app
moxiaoran57538 小时前
uni-app学习笔记三十--request网络请求传参
笔记·学习·uni-app
疯狂的沙粒10 小时前
在uni-app中如何从Options API迁移到Composition API?
javascript·vue.js·uni-app
anyup13 小时前
快崩溃了!华为应用商店已经 4 次驳回我的应用上线
前端·华为·uni-app
alphaair20 小时前
【一步步开发AI运动APP】十、微调优化内置运动分析器,灵活适配不同的应用场景
uni-app·ai运动·ai运动识别·ai健身·ai体测·ai运动app·ai运动检测·工会云上运动会·ai人体检测·ai姿态识别
moxiaoran57531 天前
uni-app学习笔记二十三--交互反馈showToast用法
笔记·学习·uni-app
Angindem1 天前
从零搭建uniapp项目
前端·vue.js·uni-app
Bug从此不上门1 天前
【无标题】
前端·javascript·uni-app·vue
耶啵奶膘2 天前
uniapp+vue2解构赋值和直接赋值的优缺点
uni-app