vuex使用的大致步骤,vuex是怎么实现的

  vuex使用的大致步骤,vuex是怎么实现的

  本文主要介绍使用vuex的步骤,帮助你更好的理解和使用vue框架。感兴趣的朋友可以了解一下。

  

一、使用Vuex的目的

  实现多组件状态管理。当多个组件需要数据共享时,Vuex是个好帮手。

  

二、Vuex 的五大核心

  其中状态和突变是必须的,其他可以根据需求添加。

  

1.state

  负责状态管理,类似于vue中的数据,用来初始化数据。

  

2.mutation

  用于修改状态中的数据,由提交触发。

  

3.action

  调度可以触发异步处理,但不能直接修改状态。首先通过组件中的dispatch触发动作,然后通过action函数中的commit触发变异,通过变异修改状态值。

  

4.getter

  vue中的计算属性(相当于VUE中的计算属性)取决于州值。一旦状态值发生变化,getter就会重新计算,也就是当一个数据依赖于另一个数据时,就会使用getter。

  

5.module

  模块化管理

  

三、Vuex 怎么用

  

1.首先当然要安装啦 (假设你已经安装了vue)

  npm安装vuex

  

2.引入并使用Vuex

  从“vue”导入Vue

  从“vuex”导入Vuex

  Vue.use(Vuex)

  

3.实例化一个Vuex对象--Store状态机 并抛出

  const store=new Vuex。商店({})

  出口默认商店

  

4.在main.js中引入并注入Vuex

  从“vue”导入Vue

  从导入应用程序。/App.vue

  从导入存储。/商店

  新Vue({

  render: h=h(App),

  商店

  }).$ mount(“# app”)

  

5.通过this.$store访问Vuex的数据

  至此,Vuex已经准备完成,接下来根据自己的需求添加数据~

  

四、示例代码

  

1.首先准备至少两个组件,不然怎么数据共享呢

  模板

  差异

  我是组件1。

  /div

  /模板

  脚本导出默认值{

  }/脚本

  样式范围

  /风格

  模板

  差异

  我是组件2。

  /div

  /模板

  脚本导出默认值{

  }/脚本

  样式范围

  /风格

  

2.在store.js中写Vuex相关代码

  从“vue”导入Vue

  从“vuex”导入Vuex

  Vue.use(Vuex)

  const store=new Vuex。商店({

  状态:{},//状态管理

  突变:{},//修改状态

  操作:{},//异步操作

  Getters:{},//计算属性

  模块:{} //模块

  })

  导出默认存储

  注意:不要忘记将store注入main.js(参考上面第三点的第四点)

  

3.假设咱们现在需要共享一个数据data,初始值为0

  const store=new Vuex。商店({

  状态:{

  数据:0

  }

  })

  

4.组件1和组件2都可以通过$store拿到data

  差异

  我是组件1。

  { {这个。$store.state.data}} //数据的值将在浏览器中显示在这里。

  /div

  差异

  我是组件2。

  { {这个。$store.state.data}} //数据的值将在浏览器中显示在这里。

  /div

  

5.那么怎么修改data呢,这时候就需要mutation出马了

  Mutation本质上是一个函数,它在被调用时接收state和params参数。

  突变:{

  changeDataMut(state,params){

  state.data=params

  }

  }

  

6.mutation有了,接下来就需要在组件中调用它,记得要用commit触发

  模板

  差异

  我是组件1。

  按钮@click=changeData 更改数据/按钮

  /div

  /模板

  脚本导出默认值{

  data(){

  返回{

  changeData(){

  //触发变异并通过提交传递参数

  这个。$ store.commit (ChangeDataMut ,10)//此时组件1和组件2中的数据都是10。

  }

  }

  }

  }/脚本

  

7.action怎么用?

  动作也是一种功能。

  如前所述,动作不能直接修改状态。首先要在组件中通过dispatch触发动作,然后在动作函数中通过commit触发变异,通过变异修改状态值。

  注意动作的参数

  动作:{

  Changeact (context,params) {//context是一个对象,我们从这个对象中解构我们需要的提交方法。

  让{commit}=上下文

  提交( changeDataMut ,params)

  }

  }

  此时,您可以在组件中触发该操作。注意使用调度。

  模板

  差异

  我是组件2。

  按钮@click=changeData 更改数据/按钮

  /div

  /模板

  脚本导出默认值{

  data(){

  返回{

  changeData(){

  //通过分派和传递参数触发动作

  这个。$ store.dispatch (ChangedataAct ,100)//此时,数据变为100,组件1和组件2同步。

  }

  }

  }

  }/脚本

  

8.getter的用法

  Getter根据状态值计算属性,并要求返回。

  现在我们假设一个值double,这个值是数据的两倍,并且会随着数据的变化而变化。

  getters:{

  doubleGet(州){

  返回state.data*2

  }

  }

  我们可以在组件中使用它。

  差异

  我是组件2。

  { {这个。$store.getters.doubleGet}}

  /div

  以上就是vuex的使用步骤细节。更多关于vuex的使用方法,请关注我们的其他相关文章!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: