vuex使用,vuex使用步骤

  vuex使用,vuex使用步骤

  状态管理是一个专为vue。j应用程序开发的状态管理模式,它采用集中式存储管理应用的所有的状态,并以相应的规则保证状态以一种可预测的方式发生变化,这篇文章主要给大家介绍了关于某视频剪辑软件入门之状态管理安装与使用的相关资料,需要的朋友可以参考下

  

目录

   1.什么是vuex2 .安装和引入3.vuex的使用4.流程介绍5 .变异6 .吸气剂过滤7.行动异步处理8.组件总结本教程为入门教程,如有错误,请各位前端大佬指出。

  

1.什么是vuex

  状态管理是一个专为vue。j应用程序开发的状态管理模式。它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化。详细介绍可以参照官网文档vuex.vuejs.org/zh/

  下面简单介绍状态管理

  

2.安装和引入

  先安装vuex。

  新公共管理安装vuex -保存

  在主页。射流研究…中引入后即可使用。

  //要用"导入"命令加载的某视频剪辑软件构建版本

  //(仅运行时或独立)已在webpack.base.conf中用别名设置。

  从“vue”导入某视频剪辑软件

  从导入应用程序 0.5/App

  从导入路由器。/路由器

  //vuex使用

  从" vuex "导入状态管理

  Vue.use(Vuex)

  const store=new Vuex .商店({

  状态:{

  //全局变量

  数量:31231

  }

  })

  Vue.config.productionTip=false

  /* eslint-禁用无-新*/

  新Vue({

  埃尔: #app ,

  路由器,

  //vuex必须加入

  店,

  组件:{ App },

  模板:"应用程序/"

  })

  

3.vuex的使用

  模板

  差异

  老大有{{showData}}

  HelloWorld2/

  /div

  /模板

  脚本

  从导入HelloWorld2 ./HelloWorld2

  从导入儿子。/儿子

  导出默认值{

  名称:“HelloWorld”,

  data () {

  返回{

  消息2: ,

  文职观察员部队文官观察设备

  }

  },

  组件:{

  HelloWorld2,

  儿子

  },已计算:{

  showData(){

  归还这个100美元商店。状态。数数;

  }

  }

  }

  /脚本

  模板

  差异

  老二有{{$store.state.count}}

  /div

  /模板

  脚本

  导出默认值{

  名称:“HelloWorld2”,

  data() {

  返回{

  }

  }

  }

  /脚本

  

4.流程介绍

  如图当没有使用状态管理时流程为:视图-操作-状态-视图

  使用了状态管理后流程为vuecomponent-(分派)动作-(提交)突变-(变异)状态-(呈现)-vuecomponent

  

5.mutation

  状态更改,更改状态管理的商店中的状态的唯一方法是提交突变。状态管理中的变化非常类似于事件:每个变化都有一个字符串的事件类型(类型)和一个回调函数(处理程序).这个回调函数就是我们实际进行状态更改的地方,并且它会接受状态作为第一个参数。

  //要用"导入"命令加载的某视频剪辑软件构建版本

  //(仅运行时或独立)已在webpack.base.conf中用别名设置。

  从“vue”导入某视频剪辑软件

  从导入应用程序 0.5/App

  从导入路由器。/路由器

  //vuex使用

  从" vuex "导入状态管理

  Vue.use(Vuex)

  const store=new Vuex .商店({

  状态:{

  //全局变量

  数量:31231

  },

  //更改状态方法

  突变:{

  //状态为上面的状态

  添加数据(状态){

  //变更状态

  状态。计数

  }

  }

  })

  Vue.config.productionTip=false

  /* eslint-禁用无-新*/

  新Vue({

  埃尔: #app ,

  路由器,

  //vuex必须加入

  店,

  组件:{ App },

  模板:"应用程序/"

  })

  然后执行更改

  模板

  差异

  老大有{{showData}}

  HelloWorld2/

  按钮类型= button v-on:click= changeData 修改按钮/按钮

  /div

  /模板

  脚本

  从导入HelloWorld2 ./HelloWorld2

  从导入儿子。/儿子

  导出默认值{

  名称:“HelloWorld”,

  data () {

  返回{

  消息2: ,

  }

  },

  组件:{

  HelloWorld2,

  儿子

  },已计算:{

  showData(){

  归还这个100美元商店。状态。数数;

  }

  },

  方法:{

  //执行更改

  变更数据(事件){

  这个100美元商店。提交(“添加数据”);

  }

  }

  }

  /脚本

  

6.getters过滤

  可以限制变化比如小于0就不能减少了

  //要用"导入"命令加载的某视频剪辑软件构建版本

  //(仅运行时或独立)已在webpack.base.conf中用别名设置。

  从“vue”导入某视频剪辑软件

  从导入应用程序 0.5/App

  从导入路由器。/路由器

  //vuex使用

  从" vuex "导入状态管理

  Vue.use(Vuex)

  const store=new Vuex .商店({

  状态:{

  //全局变量

  计数:0

  },

  //更改状态方法

  突变:{

  //状态为上面的状态

  添加数据(状态){

  //变更状态

  状态。计数

  }

  },

  //过滤

  getters: {

  getState(state) {

  if (state.count=5) {

  返回5

  }否则{

  返回状态。计数

  }

  }

  }

  })

  Vue.config.productionTip=false

  /* eslint-禁用无-新*/

  新Vue({

  埃尔: #app ,

  路由器,

  //vuex必须加入

  店,

  组件:{ App },

  模板:"应用程序/"

  })

  调用时

  模板

  差异

  老二有{{$store.getters.getState}}

  /div

  /模板

  脚本

  导出默认值{

  名称:“HelloWorld2”,

  data() {

  返回{

  }

  }

  }

  /脚本

  

7.Action--异步处理

  行动类似于突变,不同在于:

  行动提交的是突变,而不是直接变更状态100 .行动可以包含任意异步操作变异。只能同步处理

  main.js。示例如下:

  //要用"导入"命令加载的某视频剪辑软件构建版本

  //(仅运行时或独立)已在webpack.base.conf中用别名设置。

  从“vue”导入某视频剪辑软件

  从导入应用程序 0.5/App

  从导入路由器。/路由器

  //vuex使用

  从" vuex "导入状态管理

  Vue.use(Vuex)

  const store=new Vuex .商店({

  状态:{

  //全局变量

  计数:0

  },

  //更改状态方法

  突变:{

  //状态为上面的状态

  添加数据(状态){

  //变更状态

  状态。计数

  }

  },

  //过滤

  getters: {

  getState(state) {

  if (state.count=5) {

  返回5

  }否则{

  返回状态。计数

  }

  }

  },

  动作:{

  //动作触发的突变方法优势是异步处理

  添加数据(上下文){

  //模拟异步

  setTimeout(()={

  context.commit(addData )

  }, 1000)

  }

  }

  })

  Vue.config.productionTip=false

  /* eslint-禁用无-新*/

  新Vue({

  埃尔: #app ,

  路由器,

  //vuex必须加入

  店,

  组件:{ App },

  模板:"应用程序/"

  })

  在发送时应该调用行动。

  模板

  差异

  老大有{{showData}}

  HelloWorld2/

  按钮类型= button v-on:click= changeData 修改按钮/按钮

  /div

  /模板

  脚本

  从导入HelloWorld2 ./HelloWorld2

  从导入儿子。/儿子

  导出默认值{

  名称:“HelloWorld”,

  data () {

  返回{

  消息2: ,

  }

  },

  组件:{

  HelloWorld2,

  儿子

  },已计算:{

  showData(){

  归还这个100美元商店。吸气剂。getstate

  }

  },

  方法:{

  //执行更改

  变更数据(事件){

  //操作突变方法

  //这个100美元商店。提交(“添加数据”);

  //应该操作行为而不是行为触发的突变方法

  这个100美元商店。分派(“添加数据”);

  }

  }

  }

  /脚本

  

8.Module

  由于使用单一状态树,应用的所有状态会集中到一个比较大的对象。当应用变得非常复杂时,商店对象就有可能变得相当臃肿。

  为了解决以上问题,Vuex允许我们将商店分割成模块(模块).每个模块拥有自己的状态、突变、动作、获取者、甚至是嵌套子模块——从上至下进行同样方式的分割:

  如路由可以分割文件不在主页。射流研究…中放入状态管理新建商店/索引。射流研究…

  //vuex使用

  从“vue”导入某视频剪辑软件

  从" vuex "导入状态管理

  Vue.use(Vuex)

  导出默认的新Vuex .商店({

  状态:{

  //全局变量

  计数:0

  },

  //更改状态方法

  突变:{

  //状态为上面的状态

  添加数据(状态){

  //变更状态

  状态。计数

  }

  },

  //过滤

  getters: {

  getState(state) {

  if (state.count=5) {

  返回5

  }否则{

  返回状态。计数

  }

  }

  },

  动作:{

  //动作触发的突变方法优势是异步处理

  添加数据(上下文){

  //模拟异步

  setTimeout(()={

  context.commit(addData )

  }, 1000)

  }

  }

  })

  修改主页。射流研究…

  //要用"导入"命令加载的某视频剪辑软件构建版本

  //(仅运行时或独立)已在webpack.base.conf中用别名设置。

  从“vue”导入某视频剪辑软件

  从导入应用程序 0.5/App

  从导入路由器。/路由器

  从导入存储。/商店

  Vue.config.productionTip=false

  /* eslint-禁用无-新*/

  新Vue({

  埃尔: #app ,

  路由器,

  //vuex必须加入

  店,

  组件:{ App },

  模板:"应用程序/"

  })

  我们还能把主页。射流研究…中的状态拿出新建商店/状态。射流研究…

  导出默认值{

  计数:0

  }

  然后索引。射流研究…可以改成

  //vuex使用

  从“vue”导入某视频剪辑软件

  从" vuex "导入状态管理

  从导入状态100/州

  Vue.use(Vuex)

  导出默认的新Vuex .商店({

  州:州,

  //更改状态方法

  突变:{

  //状态为上面的状态

  添加数据(状态){

  //变更状态

  状态。计数

  }

  },

  //过滤

  getters: {

  getState(state) {

  if (state.count=5) {

  返回5

  }否则{

  返回状态。计数

  }

  }

  },

  动作:{

  //动作触发的突变方法优势是异步处理

  添加数据(上下文){

  //模拟异步

  setTimeout(()={

  context.commit(addData )

  }, 1000)

  }

  }

  })

  

总结

  到此这篇关于某视频剪辑软件入门之状态管理安装与使用的文章就介绍到这了,更多相关状态管理安装与使用内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

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

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