Vuex笔记

Vuex

解释
    vuex 实现数据的全局共享,响应式更新
    state 存放状态
        $store.state.xxx访问

    mutations 改变状态的唯一方法
     SET_SCORE(state,data){}
        $store.commit("xxx",data)

    actions 异步操作数据的方式
     changeScore(context,data){
     //在actions中访问mutations
     context.commit("SET_SCORE",data)}
        $store.dispatch("xxx",data)

    getters  从现有的状态计算出新的数据
     level(state){
     return state.user.score/100
    ​}
        $store.getters.XxX

    module 子模块
    把登录功能放在store/moudules/user.js   actions中
    loginView.vue页面执行登录
    实现store/modules/user.js 实现注销
    实现 登录成功提示,登录失败提示
为什么要把登录转换到vuex中
    1. 登录后成功的数可以全局共享
    2. 为了重复利用
     登录功能可能不止在登录页面
        1. 首页点击弹框登录
        2.购物车 跳转前,弹框登录
        3. 登录位置会有很多
        如果写在Vuex只需要在登录地方
         $store.dispatch("login",data) 方法就可以
为什么要写api/login.js (定义api呢)
    重复利用,登录的api也会调用多次
    方便集中管理
     所有的请求地址与请求方式 api文件中
     改请求方式与参数可以直接修改 api内容就可以,不用具体进入到某个组件
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Vuex Models是一个用于在Vue.js应用程序中管理数据的库。它提供了一种模块化的管理模式,可以将store划分为多个模块(module),每个模块都有自己独立的state、mutation、action和getter。 使用Vuex Models非常简单。首先,您需要导入`genVuexModels`函数并使用它来生成存储字段。然后,在您的store配置中,将这些存储字段放在`models`对象中。例如,您可以在`store/index.js`文件中进行配置,如下所示: ```javascript // your imports import { genVuexModels } from 'vuex-models' // Vue.use(Vuex), etc // First argument ... const models = genVuexModels({ a: { state: {}, mutation: {}, getters: {}, // ... }, // ... }) export default new Vuex.Store({ // ... models, // ... }) ``` 通过这样配置,您就可以在Vue组件中轻松地访问和修改存储字段。例如,您可以使用`this.$models.a.state`来访问模块`a`的state,使用`this.$models.a.mutation`来提交模块`a`的mutation,使用`this.$models.a.getters`来获取模块`a`的getter。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [vuex-models:vue组件和vuex存储之间的简单双向数据绑定](https://download.csdn.net/download/weixin_42151305/16637681)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [Vue学习笔记 —— Vuex之Models(模块化管理模式)](https://blog.csdn.net/weixin_43340295/article/details/110002537)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值