首页 > 其他分享 >vuex的使用

vuex的使用

时间:2022-11-01 21:45:26浏览次数:78  
标签:name state 使用 组件 router vuex 路由

目录

一、Vuex的使用

  1. Vuex的介绍:vue的插件,增强了vue的功能

    在Vue中实现集中式状态(数据)管理的一个Vue插件,在Vue应用中多个组件的共享状态进行集中式的管理(读/写),

    也是一种组件间通信的方式,且适用于任意组件间的通信

  2. Vuex的使用流程

    • state:存储数据的地址
    • actions:服务员,中转站
    • mutations:厨师,真正改变state数据的地方
    • 使用步骤
      1. state中定义变量
      2. 在组件中通过this.$store.dispatch('actions中定义的函数'),触发actions中的函数执行
      3. actions中的函数中,调用context.commit('mutations中定义的函数')
      4. mutations中定义的函数实现真正的修改state中的数据
      5. 页面中只要使用$store.state.变量,变量变化,页面就变化,实现了组件间通信
      6. 注意:
        • 在组件中可以直接调用commit触发mutations中定义的函数
        • 在组件中可以直接修改state中定义变量
  3. vuex的执行流程

image

二、Vue-router的使用

  1. 介绍

    ​ 官方提供的用来实现SPA的vue插件

    ​ 有了它以后,我们可以写很多页面组件,通过地址栏的不同路径先是不停地页面组件

    https://router.vuejs.org/zh/index.html

  2. 基本使用步骤

    1. 新建router/index.js

      const routes = [配置路由1,配置路由2]

    2. main.js中使用:之前已经写好的

      import router from './router'
      new Vue({
          ...
          router,
          ...
      }).$mount('#app')
      
    3. 只需要写页面组件,配置路由即可

    4. 在App.vue中加入

      <router-view>
      
      </router-view>
      
    5. 在浏览器访问const routes 中配置的路径,就能看到对应的页面组件

  3. 路由的跳转

    • 使用步骤:

      -在html中使用:
      	<router-link :to="path">去登录</router-link>
      -在js中使用:
      	this.$router.push('goods')
      
  4. 路由跳转携带参数

    • 两种情况:

      • 带在请求地址中以:?name=zhang&age=19
      • 在地址中类似于django的分组:/goods/1/
    • 情况一:请求地址中

      <router-link to="/login/?name=zhang&age=19">去登录<router-link>
      组件中接受:this.$route.query.取
      
    • 情况二:地址中

      <router-link to="/login/zhang">去登录<router-link>
      组件中接受:this.$route.params.取
      
  5. 路由嵌套步骤

    1. router/index.js相应的路由中

      {
          path:'/goods',
          name:'/goods',
          component:Goods,
          children:[
              {
                  path:'list',
                  name:'list',
                  component:GoodList
              },
              {
                  path:"detail",
                  name:'detail',
                  component:GoodDetail
              }
          ]
      }
      
    2. 必须要在Goods组件中,写

      <router-view></router-view>
      
    3. 使用router-link标签跳转

    4. 只会变更Goods下router-view包裹的位置

  6. 路由守卫

    1.作用
    	对路由进行权限控制
    2.前置路由守卫
    	router.beforeEach((to,from,next)=>{
    		console.log('前置路由守卫',to,from)
    		if (to.name == 'shoppingcar'){
    			let name = localStorage.getItem('name')
    			if (name) {
    				next()
    			}else{
    				alert('不好意思没有权限')
    			}
    		}else{
    			next()
    		}
    	})
    3.后置路由守卫
    	router.afterEach((to,from)=>{
    		console.log('后置路由守卫',to,from)
            document.title = to.name
    	})
    

标签:name,state,使用,组件,router,vuex,路由
From: https://www.cnblogs.com/Zhang614/p/16849270.html

相关文章

  • 使用德雷福斯模型
    我们通过的德雷福斯模型从新手到专家的升级之路.任何一个领域从新手到专家都需要十年时间.这个十年时间并不是一直不停的工作,而是不断的实践.这里的实践的含义是:1.定......
  • 今日内容 Vuex 和Vue-router的使用
    Vuex的使用作用vue的插件,增强了vue的功能  在Vue中实现集中式状态(数据)管理的一个Vue插件,对vue应用中多个组件的共享状态进行集中式的管理(读/写),也是一种组件间通信......
  • HTML笔记 - HTML中表单标签的使用
    HTML中表单标签的使用目录HTML中表单标签的使用1.表单标签2.表单的提交3.表单的格式化1.表单标签form标签表示表单inputtype效果设置text文件输入框......
  • ScheduledExecutorService使用介绍
    JUC包(java.util.concurrent)中提供了对定时任务的支持,即ScheduledExecutorService接口。本文对ScheduledExecutorService的介绍,将基于Timer类使用介绍进行,因此请先阅读......
  • Spring-Task使用介绍
    目前springboot应用广泛,因此对于spring-task直接基于springboot框架介绍,不涉及xml配置。本文直接介绍spring-task的使用方法,涉及的相关基础知识不再赘述,请先阅读Timer和......
  • vuex的使用,vue-router的使用,路由守卫
    vuex的使用Vue-router的使用基本使用路由的跳转路由跳转携带参数路由嵌套路由守卫vuex的使用vuex是vue的一个插件,大大提升了vue的功能在Vu......
  • tqdm的介绍和使用
    Tqdm 是一个快速,可扩展的Python进度条,可以在Python长循环中添加一个进度提示信息,用户只需要封装任意的迭代器tqdm(iterator)。使用pip就可以安装。使用方法一:tqdmt......
  • Spring基础使用八
    Spring基础使用八基于注解的声明式事务Spring提供了@Transactional注解实现事务管理配置@Transactional配置Spring的xml<?xmlversion="1.0"encoding="UTF-8"?><b......
  • 优雅的写好Vue项目代码 — 路由拆分、Vuex模块拆分、element按需加载
    目录路由的拆分VUEX模块拆分ElementUI库按需加载的优雅写法路由的拆分项目较大路由较多时,路由拆分是一个不错的代码优化方案,按不同业务分为多个模块,结构清晰便于统一管......
  • 关于Markdown语法的入门学习与使用
    Markdown介绍(百度扒的)Markdown是一种轻量级标记语言,创始人为约翰·格鲁伯(JohnGruber)。它允许人们使用易读易写的纯文本格式编写文档,然后转换成有效的XHTML(或者HTML)文......