Closed jessjava closed 6 years ago
改成这样试一试。
components = {
imagebox: imagebox
}
找到原因了。给你描述一下: 父页面
data{
viewobj:{names:[]}
}
组件页面
props{
myNames:Object
}
我在传递的时候需要这样:
onLoad(
//模拟请求
setTimeout(()={
let newData = {names:[{},{}...]};
this.viewobj={... newData}
},2000);
)
<compont :myNames.sync="viewobj.names"></compont>
事实说明上面这样是不行的
必须在父页面data 声明 tmpNames:[],然后在父页面给 tmpNames 赋值之后用下面这种方式才可以
onLoad(
//模拟请求
setTimeout(()={
let newData = {names:[{},{}...]};
this.viewobj={... newData}
this.tmpNames = this.viewobj.names;
},2000);
)
<compont :myNames.sync="tmpNames"></compont>
请教一下原因。感谢!
这是同一个问题么? 组件一定要放到repeat中才能编译出来?
<compont :myNames.sync="viewobj.names"></compont>
暂不支持 点操作。
是同一个问题
又遇到一个问题。重复进入父页。根据不同参数查询出来的list不能准确传递。还是遗留上次的值。
另外前段时间给您提过一个data值重复进入遗留值得问题。(需要手机端打开调试模式看控制台)也是遗留数据问题。
https://github.com/jessjava/wepytest
给您写了个demo,您有空看看哦
操作很简单: 列表页,info页面(info页面引用了一个组件) 操作:在列表页,点击第一条,进入info没有值。back之后,点击第二条进入info显示的是上一条记录的查询结果,依次类推,back之后,每点依次进入info都会遗留上一次的查询结果。 手机端有这个问题。开发者端没问题。
@jessjava 安卓测试没有问题。 另外,如果和标题问题无关,请另开一个issue说明问题
我的组件是这样写的。
我在其他页面引入这个组件的时候:组件必须写在 repeat 标签里面才能显示。为什么啊。
显示不出来:<imagebox :attachments="xxx"></imagebox>
repeat:<repeat><imagebox :attachments="xxx"></imagebox></repeat>
没有任何循环!!!