温故而知新(第二天)

1.简述vuex数据传递流程

        当我们调用dispatch 来触发actions 里面的方法时.我总结出了几个步骤来描述它的数据传递流程

1.我们在组件或者模块中调用dispatch来触发actions 里面的方法

2.当方法执行的时候 会通过 commit 来触发 mutations 里面的方法进行数据的修改。

3.mutations 里面 的每个函数都会有一个 state 参数,这样就可以在 mutations 里面进行 state 的数据修改

4.当数据修改完毕后,会同步到组件中,因为数据双向绑定,所以页面的数据也会发生改变

2.Vuex 的 Mutation 和 Action 之间的区别是什么?

        Mutation和Action之间的区别可以从三个方面来说

        1.从流程顺序方面来说,如果想要修改一个state数据,首先视图触发Action,Action 再触发 Mutation

        2.从角色定位来说二者扮演不同的角色,Mutation专注于修改 State,理论上是修改 State 的唯一途径。Action一般用来写业务代码、异步请求。

        3.从限制方面来说,因为两者角色的不同有不同的限制,Mutation必须同步执行,Action:可以异步,但不能直接操作State.

3.Vue-Router 是干什么的,原理是什么?

        Vue-Router 是 Vue.js 官方的路由插件,主要作用时用来构建单页面应用.Vue 的单页面应用是基于路由和组件的,路由用于设定访问路径,并将路径和组件映射起来。传统的页面应用,是用一些超链接来实现页面 切换和跳转的。在 Vue-Router 单页面应用中,则是路径之间的切换,来控制组件的切换。路由模块的本质就是建立起 url 和页面之间的映射关系,

        它的实现原理是SPA(single page application):就是更新视图而不重新请求页面,目前vue-router在实现单页面前端路由时,提供了两种方式:Hash模式和History模式

扫描二维码关注公众号,回复: 13231848 查看本文章

4.路由之间是怎么跳转的?有哪些方式?

        路由跳转我们一般会用到的差不多有四种

        1.用router-link标签来跳转,router-link标签的to属性为需要跳转到页面的路径

        2.使用this.$router.push()跳转到指定的url,并会在 history 中添加记录,点击回退返回到上一个页面

        3.使用this.$router.replace()跳转到指定的 url,但是 history 中不会添加记录,点击回退到上上个页面

        4.使用this.$touter.go(n)向前或者后跳转 n 个页面,n 可以是正数也可以是负数

猜你喜欢

转载自blog.csdn.net/hx_programmer/article/details/121184693