微信小程序主页面Page 调用setData之后,由于这个变量是用于自定义控件的属性的,导致自定义控件也刷新了,但是有一些值就变成null了
Page的html
<list wx:for='{{WaitData}}' lists='{{item}}' ></list>
Page的js
var _ob = {
title: res[i].ClassName + '(' + res[i].ClassCode + ')',
data: _data,
fn:function(){
},
// val: res[i],
needDel: true,
aaa:[function(){ console.log("111") }],
delFn: function(a) {
console.log(a)
},
btns: [{
text: "操作1",
fn: function(a) {
console.log(a)
},
val: res[i].TermYName
}, {
text: "操作2",
fn: function(a) {
console.log(a)
},
val: res[i].TermYName
}]
};
DataFromt.push(_ob);
console.log(DataFromt) //这里打印出来的匿名函数fn都是有值的
that.setData({
WaitData: DataFromt
});
console.log(DataFromt) //这个也有
自定义控件的属性
properties: {
lists: {
type: Object,
value: {}
}
},
但是现在是主页setData之后,在自定义控件里面打印这个lists,里面定义的匿名函数全都没了。 我没搞懂为啥
我在主页随便弄的一个测试的代码试了一下,我发现他可以设置匿名函数的
下面是我发生问题的图片