要实现的功能
1 改
获取数据列表>点击修改跳转页面>跳转页面的同时将参数传递过来并显示>修改参数>获取修改的参数>点击保存参数>跳转回初始页面并刷新数据
遇到的问题
1如何跳转页面的同时将参数传递过来并显示?
onLoad: function (this1) {
console.log(this1);
var id = this1.id;
var name =this1.name;
var age = this1.age;
this.setData({
id:id,
name :name,
age:age,
})//获得要修改的并显示
},
一开始我这样写 ,代码是对的,但为什么没效果?
因为没有要传递的参数怎么显示?,肯定没有效果。
应该在初始页面的修改按钮里设置代码传递参数
然后在js里使用 xiugai: function (e) {
var that = this;
var id = e.target.dataset.id;
var name = e.target.dataset.name;
var age = e.target.dataset.age;
wx.navigateTo({ url: ‘/pages/xiugai/xiugai?id=’+id + “&name=”+name +"&age="+age, })
},方法跳转到要修改的要修改的页面。这样这个步骤就达到了。
2 如何获取修改的参数?
getName: function (e) {
var val = e.detail.value;
this.setData({
name: val
});
},
// 取得年龄
getAge: function (e) {
var val = e.detail.value;
this.setData({
age: val
});
},
saveUser:function(){
var name = this.data.name;
var age = this.data.age;
var id = this.data.id;
wx.request({
url: ‘http://127.0.0.1:6060/user/updateUser’,
data: {
“id”: id,
“name”: name,
“age”: age,
},
success:function(res){
//取得保存结果
代码是对了,但是还需要在跳转后的页面给输入框绑定一个点击事件,否则只能执行到显示数据,因为没有绑定输入框怎么获取修改后的值,所以只能显示初始页面的数据应该在xwml里添加输入框代码
这样就能获取到修改后的数据了
3如何跳转回初始页面并刷新数据?
因为上面已经取得了修改后的数据所以我们只要点击保存返回初始页面就可以了
if(res.data == “success” ){
wx.navigateBack({//返回
delta: 1
})
}
}
})
},
<----------------!-------------->
2增
做好了改那么增就好做一点,比改少了几个步骤
获取数据列表>点击新增跳转页面>>输入参数>获取输入的参数>点击保存参数>跳转回初始页面并刷新数据
if(name == “”){
这个是判断是否为空,如果为空 就提示并返回?
if(name == “”){
wx.showToast({
title: ‘请输入姓名’,
icon: ‘none’,
duration: 1500
})
return;
}
if(age == ""){
wx.showToast({
title: '请输入年龄',
icon: 'none',
duration: 1500
})
return;
}
这样就可以了,剩下的步骤参照改的方法
<----------------!-------------->
3删除
点击删除按钮>弹出是否删除>点击取消>>返回页面
点击删除按钮>弹出是否删除>点击确认删除>根据点击的id删除>弹出提示框提示删除成功>刷新页面
问题
1怎么点击按钮弹出提示框
调用 wx.showModal方法弹出提示框
2怎么根据点击的id删除相应数据
shanchu: function(e){
var that = this;
var id = e.target.dataset.id; //2、取得需要删除的ID
具体代码如下:
<----------------!-------------->
查