localstorage和store.js哪个好

JavaScript027

localstorage和store.js哪个好,第1张

localstorage和store.js相比store.js好

如果不使用store.js,那么使用localStorage的时候,被存储的每个值上都调用了一次toString方法。这就是说,你不能方便的对numbers、objects或者arrays进行存取。

JSON是JavaScript的原生序列化引擎。但是在使用store.js的时候,你不需要自己去对值进行序列化或反序列化,在每次调用store.set()和store.get()的时候,store.js已经分别通过JSON.stringify()和JSON.parse()实现了相同的效果。

状态管理有5个核心,分别是state、mutation、getter、action、module

(1)state

简单的理解,可以把state想象成组件中的data,专门用来存储数据的。

如果在组件中,想要访问store中的数据,只能通过```this.$store.state.xxx来访问

(2)mutation

负责修改state中的数据

如果要操作store中的state值,不推荐直接操作state中的数据,推荐通过调用mutations提供的方法来操作对应的数据。mutation的作用如下图:

(4)action

action和mutation有些类似,不同在于

(5)mudule

module解决了当state复杂臃肿的时候,module可以将store分割成模块,每个模块拥有直接的state、mutation、action和getter。

store.set('username', 'marcus')

store.get('username')

store.remove('username')

store.clear()

store.set('user', { name: 'marcus', likes: 'javascript' })

var user = store.get('user')

alert(user.name + ' likes ' + user.likes)

// Get all stored values

store.getAll().user.name == 'marcus'

// Loop over all stored values

store.forEach(function(key, val) {

console.log(key, '==', val)