码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • uniapp 配置并使用 VueX



     Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式。它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化。

    uni-app 内置了 VueX 


    • 1、创建需要的文件

    1.  右键点击 根目录【我的是 uni-shop】,然后新建 目录,命名为 store
    2. 右键点击刚刚建立的 store 文件夹,然后新建 js 文件

    ​

    创建某个store模块 ,例如存储购物车数据的 cart.js

    • 2、初始化 store 

    在 store.js 文件中,配置下面代码 

    1. // 1. 导入 Vue 和 Vuex
    2. import Vue from 'vue'
    3. import Vuex from 'vuex'
    4. // 2. 将 Vuex 安装为 Vue 的插件
    5. Vue.use(Vuex)
    6. // 3. 创建 Store 的实例对象
    7. const store = new Vuex.Store({
    8. // TODO:挂载 store 模块
    9. modules: {},
    10. })
    11. // 4. 向外共享 Store 的实例对象
    12. export default store

    在 main.js 中导入 store 实例并挂载 

    1. // 1. 导入 store 的实例对象
    2. import store from './store/store.js'
    3. // 省略其它代码...
    4. const app = new Vue({
    5. ...App,
    6. // 2. 将 store 挂载到 Vue 实例上
    7. store,
    8. })
    9. app.$mount()

    在 cart.js 中,初始化如下的 vuex 模块:

    1. export default {
    2. // 为当前模块开启命名空间
    3. namespaced: true,
    4. // 模块的 state 数据
    5. state: () => ({
    6. // 购物车的数组,用来存储购物车中每个商品的信息对象
    7. // 每个商品的信息对象,都包含如下 6 个属性:
    8. // { goods_id, goods_name, goods_price, goods_count, goods_small_logo, goods_state }
    9. cart: [],
    10. }),
    11. // 模块的 mutations 方法
    12. mutations: {},
    13. // 模块的 getters 属性
    14. getters: {},
    15. }

    在 store/store.js 模块中,导入并挂载购物车的 vuex 模块,示例代码如下

    1. import Vue from 'vue'
    2. import Vuex from 'vuex'
    3. // 1. 导入购物车的 vuex 模块
    4. import moduleCart from './cart.js'
    5. Vue.use(Vuex)
    6. const store = new Vuex.Store({
    7. // TODO:挂载 store 模块
    8. modules: {
    9. // 2. 挂载购物车的 vuex 模块,模块内成员的访问路径被调整为 m_cart,例如:
    10. // 购物车模块中 cart 数组的访问路径是 m_cart/cart
    11. m_cart: moduleCart,
    12. },
    13. })
    14. export default store

     在 xxx.vue 页面中,修改  标签中的代码如下:

    1. // 从 vuex 中按需导出 mapState 辅助方法
    2. import { mapState } from 'vuex'
    3. export default {
    4. computed: {
    5. // 调用 mapState 方法,把 m_cart 模块中的 cart 数组映射到当前页面中,作为计算属性来使用
    6. // ...mapState('模块的名称', ['要映射的数据名称1', '要映射的数据名称2'])
    7. ...mapState('m_cart', ['cart']),
    8. },
    9. // 省略其它代码...
    10. }

     

    以上就是这么使用的,和之前学vue时,用法一样

  • 相关阅读:
    C#实现Windows服务安装卸载开启停止
    Arduino与Proteus仿真实例-密码门禁控制仿真
    OSPF协议详解及快速学会(OSPF协议与RIP协议对比,区域划分,数据包类型,OSPF的状态机,工作过程,基础配置,扩展配置,条件匹配)
    经典排序算法总结
    pycharm 断点调试python Flask
    全网最全谷粒商城记录_06、环境-使用vagrant快速创建linux虚拟机——2、vagrant镜像仓库、下载、安装、验证
    顶刊示例-经济研究数据-全国、省、市-城市人均收入、农村人均收入面板数据
    【机器学习之线性回归】初识:多元线性回归 || 最优解 || 正规方程: 使用矩阵思想求解多元线性方程组
    【信号隐藏-数字水印】基于小波变换算法DWT结合离散余弦变换DCT实现音频数字水印嵌入提取附matlab代码
    LightningChart.NET全新版本正式发布——助力打造超快数据可视化时代
  • 原文地址:https://blog.csdn.net/weixin_49931650/article/details/132612703
  • 最新文章
  • 沪漂五周年了:我越来越迷茫了
    Agentic Skill Routing 实战:别再把所有 Skill 塞进 AI Agent 上下文
    MySQL-Seconds_behind_master的精度误差
    [MAF预定义ChatClient中间件-03]CachingChatClient——利用缓存省钱省时间
    AI的至暗历史:从万众期待到被政府撤资,AI的两次死亡徘徊
    Agent OS :五种驯服不确定性的范式
    PortSwigger SQL注入LAB11
    数据库即时编译JIT
    [Begin]AI Learn Data Day 0
    深度学习进阶(二十七)现代 LLM 的核心架构设计其二:SwiGLU
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号