我在用 React 做一个 Todo list 的应用,想使用 window.localStorage 存储一些数据。当我按正常流程操作存储数据后,刷新页面数据就没有了,下面是部分代码:
var Storage = require('../lib/localstorage')()
var AppRoute = React.createClass({
getInitialState: function () {
return {
thisShowPop: false,
tasks: []
}
},
componentDidMount: function () {
var tasks = Storage.get('tasks') || []
this.setState({tasks: tasks})
},
addItem: function (name, desc) {
var tasks = this.state.tasks
var taskId = tasks[0] ? tasks[0].id + 1 : 1
var task = {...}
tasks.unshift(task)
this.setState({tasks: tasks})
Storage.set('tasks', tasks)
this.hidePop()
},
finishItem: function (id, thought) {
var tasks = this.state.tasks
var task = {...}
this.setState({tasks: tasks})
Storage.set('tasks', tasks)
}
})
存储数据时截图:
刷新浏览器后存储的数据消失:
去 Google 和 百度 上找了一圈没有找到答案,不知大家有没有遇到过这种情况,麻烦解答一下!
在componentDidMount的时候log一下get到的tasks,看看是不是空的