夏日的草原,早晨空气格外清新,我缠着父亲在草原上漫步。幽幽的草香迎面拂来,红艳艳。朝阳正从地平线上冉冉升起,为辽阔的草原镀上一层金色。草叶上的露珠,像镶在翡翠上的珍珠,闪着五颜六色的光华。我看到草丛中夹着许多粉红色、白色、黄色或是蓝色的不知名的花,把草原装扮得十分美丽。
当state里属性定义为obj类型时,有时候出现:在其他页面修改完state值之后,其他页面并没有同步更新。
这时候需要转换一下。JSON.parse(JSON.stringify(obj))
this.$store.dispatch("setGlobalUserInformation",JSON.parse(JSON.stringify(obj)))
补充知识:一个“错误”的vuex写法:vuex刷新了数据但是视图没有刷新
这是个很尴尬的问题,让我猜猜看你的代码是不是这样写的:
<template> <div id="app"> <img src="./assets/logo.png"> <button @click="clickme">点击我</button> <span>{{countnumber}}</span> </div> </template> <script> export default { name: 'app', data() { return { countnumber: this.$store.state.count, } }, methods: { clickme: function() { this.$store.commit("increment"); } }, } </script> <style> </style>
那么恭喜你,无论你怎么平明点,都会是0.但是如果你是下面这种写法,那就是正确的了:
<template> <div id="app"> <img src="./assets/logo.png"> <button @click="clickme">点击我</button> <span>{{$store.state.count}}</span> </div> </template> <script> export default { name: 'app', data() { }, methods: { clickme: function() { this.$store.commit("increment"); } }, } </script> <style> </style>
区别就是你直接关联到界面里面。为什么这样?不清楚,毕竟是别人的框架。
以上这篇解决vuex改变了state的值,但是页面没有更新的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。