Comments (5)
OK, the offending code is from vuex-router-sync
:
https://github.com/vuejs/vuex-router-sync/blob/3c826bb089eb696fa6fe5460a62ecd27e22a7d6a/src/index.js
So I worked round this and performed a full app reset like so:
store.replaceState(Object.assign(initial, { route: store.state.route }))
app.$router.replace({path:'/'})
localStorage.clear()
Note that this code is not specific to vuex-persistedstate.
Hope this helps someone.
from vuex-persistedstate.
@davestewart thanks for investigating this issue!
from vuex-persistedstate.
@kylebradshaw do you still have this issue? Can you add a runnable example on jsfiddle?
from vuex-persistedstate.
I just had this the same error, in my own project, without vuex-persisted state - possibly it's a core Vue thing.
[Vue warn]: Error in callback for watcher "function () { return getter(this$1.state, this$1.getters); }": "TypeError: Cannot read property 'fullPath' of undefined"
(found in <Root>)
warn @ vue.esm.js?65d7:571
logError @ vue.esm.js?65d7:1683
globalHandleError @ vue.esm.js?65d7:1678
handleError @ vue.esm.js?65d7:1667
run @ vue.esm.js?65d7:3126
update @ vue.esm.js?65d7:3098
notify @ vue.esm.js?65d7:677
reactiveSetter @ vue.esm.js?65d7:994
(anonymous) @ vuex.esm.js?edaa:450
_withCommit @ vuex.esm.js?edaa:495
replaceState @ vuex.esm.js?edaa:449
__webpack_exports__.a.store.reset @ plugin.js?c2dd:30
(anonymous) @ VM49949:1
vue.esm.js?65d7:1687
TypeError: Cannot read property 'fullPath' of undefined
at Vue$3.store.watch.sync (index.js?7e73:21)
at Watcher.run (vue.esm.js?65d7:3124)
at Watcher.update (vue.esm.js?65d7:3098)
at Dep.notify (vue.esm.js?65d7:677)
at Object.reactiveSetter [as $$state] (vue.esm.js?65d7:994)
at eval (vuex.esm.js?edaa:450)
at Store._withCommit (vuex.esm.js?edaa:495)
at Store.replaceState (vuex.esm.js?edaa:449)
at Store.__webpack_exports__.a.store.reset (plugin.js?c2dd:30)
at <anonymous>:1:7
logError @ vue.esm.js?65d7:1687
globalHandleError @ vue.esm.js?65d7:1678
handleError @ vue.esm.js?65d7:1667
run @ vue.esm.js?65d7:3126
update @ vue.esm.js?65d7:3098
notify @ vue.esm.js?65d7:677
reactiveSetter @ vue.esm.js?65d7:994
(anonymous) @ vuex.esm.js?edaa:450
_withCommit @ vuex.esm.js?edaa:495
replaceState @ vuex.esm.js?edaa:449
__webpack_exports__.a.store.reset @ plugin.js?c2dd:30
(anonymous) @ VM49949:1
undefined
If you click the error and set a breakpoint, you can find – I presume – the source:
from vuex-persistedstate.
I guess store.replaceState
just replace entire current state object by another X object rather than doing some stuff like Object.assign(...)
so it doesn't keep any parts of old state which doesn't contained on X like state created by vuex-router-sync
. Did anyone think It's a bit confused?
from vuex-persistedstate.
Related Issues (20)
- how can i use dynamic key HOT 2
- Not working with Secure-Ls HOT 1
- High Severity: Prototype Pollution vulnerability in module shvl
- How to encrypt sessionStorage using secure-ls? HOT 1
- Feature Request: Code Examples / Documentation for Options
- Lots of plugins? HOT 1
- VueDevtools not data HOT 1
- Example needed: path options and namespaces HOT 1
- secure-ls | Uncaught Error: Could not parse JSON HOT 2
- Wrong data after restore. HOT 1
- One cookie by module with JS-COOKIE
- Storage option with Js cookie stops working suddenly HOT 1
- vuex-persistedstate does not follow vuex plugin guidelines HOT 2
- Newbe Question - Restore data from localStore to Vuex on page reload in Nuxt.js HOT 2
- Unable to access data from Vuex after rehydration in Nuxt.js HOT 2
- Clearing localstorage in developer tools not working HOT 2
- Feature Request: Support Pinia HOT 1
- [Feature Request] can `paths` option support `function` and `Regex`?
- It's not clear to me if Vuex 3 and Vue 2 are supported by vuex-persistedstate 4
- Exemple using cookie-universal-nuxt HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from vuex-persistedstate.