dannyslee 2017-06-04 03:44 采纳率: 0%
浏览 1065

如何做到本地缓存,使得下一次打开小程序后,仍旧能看到以前的数据,代码该如何实现?(附有源码)

wxml:

 <view class="header">
<image src="../../img/2.png" class="plus" bindtap="createTodoItem"></image>
<input class="input" name="input" maxlength="140" value="{{inputValue}}" placeholder=" " bindinput="changeInputValue"/>

</view>
<block wx:if="{{todos.length}}">
<view class="todo">
<view wx:for="{{todos}}" class="item" wx:key="{{index}}" bindtap="toggleTodoItem" data-index="{{index}}">
<icon class ="icon1" type="{{item.completed ? 'success':'circle'}}" />
<text class="itemName{{item.completed ? ' itemCompleted':''}}">{{item.name}}</text>
<icon class ="icon2" type="clear" catchtap="removeTodoItem" data-index="{{index}}" />
</view>
</view>

js

 let _createTodoItem = (todos,name) => {
todos.push({
name,
completed:false
});
return todos;
}
let _toggleTodoItem=(todos,index)=> {
todos[index].completed = !todos[index].completed
return todos;
}
let _removeTodoItem=(todos,index)=> {
todos.splice(index,1);
return todos;
}
let _calculateTodoCount=(todos)=> {
return todos.filter((todo)=>!todo.completed).length;
}

Page({

/**
* 页面的初始数据
*/
data: {
inputValue:'',
todoCount:3,
todos:[

]
},

/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {

},
changeInputValue:function(e){
console.log(e.detail.value);
this.setData({
inputValue:e.detail.value
});
},

createTodoItem:function(){
this.setData({
todos: _createTodoItem(this.data.todos,this.data.inputValue),
inputValue:'',
todoCount:_calculateTodoCount(this.data.todos)
});
},

toggleTodoItem:function(e){
console.log(e.currentTarget.dataset.index);
this.setData({
todos: _toggleTodoItem(this.data.todos, e.currentTarget.dataset.index),
todoCount: _calculateTodoCount(this.data.todos)
})
},

removeTodoItem:function(e){
this.setData({
todos: _removeTodoItem(this.data.todos, e.currentTarget.dataset.index),
todoCount: _calculateTodoCount(this.data.todos)
}) 
},

})
  • 写回答

2条回答

  • 非梧不栖11 2017-06-05 03:40
    关注

    html5的本地存储应该可以帮到你

    评论

报告相同问题?

悬赏问题

  • ¥15 使用C#,asp.net读取Excel文件并保存到Oracle数据库
  • ¥15 C# datagridview 单元格显示进度及值
  • ¥15 thinkphp6配合social login单点登录问题
  • ¥15 HFSS 中的 H 场图与 MATLAB 中绘制的 B1 场 部分对应不上
  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配