请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

为什么在data中把原先的post_key[]删除也可以显示

为什么课程中将所有数据转移到post-data. js后,在原来的data里面删除了之前的所有数据,但是原先的data{post_data[]}不是在下面的set_data里面也已经命名了吗?为什么可以在在data{}中删除了post_data[],依然可以显示?
https://img1.sycdn.imooc.com//szimg/5db55ad808e184dd06610496.jpg

正在回答 回答被采纳积分+3

2回答

提问者 Geek宝贝 2019-10-28 10:31:17
原先的代码:
Page({

data: {
date: 'Nov 18 2019',
title: '正是虾肥蟹壮时',
posts_key: [] 
},

onLoad: function (options) {
this.setData({
posts_key: postsData.postList
})
}
})

根据课程的讲述,我们用require方法可以将很多“服务器数据”转移到了post-data.js,然后原先在post.js文件中data{}中的数据因为被转移了,因此data{}中的内容可以删除变成空白,因此课程最后示例代码变成下面这样,

Page({

data: {
//该部分数据内容被转移到post-data.js后,被删除了
},

onLoad: function (options) {
this.setData({
posts_key: postsData.postList
})
}
})


根据老师所说,所有的数据都需要传到data{}中才能在wxml中页面显示,那么,问题来了!为什么data{}中什么内容都没有, 数据内容依然可以在wxml中显示?


按照我的理解,至少data{}中,要有this.setData方法中所定义的post_key对象,才能显示来自post-data.js内的数据,如下面代码这样:

Page({

data: {
posts_key: [] 
//我个人觉得这个地方post_key[]不能被删除,才能显示来自post-data.js内的数据
},

onLoad: function (options) {
this.setData({
posts_key: postsData.postList
})
}
})


所以我想问的是,为什么课程代码中,data{}中什么内容都没有, 数据内容依然可以在wxml中显示?



1 回复 有任何疑惑可以回复我~
  • 7七月 #1
    data中可以不用定义,但是必须有setData,setData了才能显示。
    回复 有任何疑惑可以回复我~ 2019-10-28 17:06:35
7七月 2019-10-27 17:28:44

麻烦帖下代码 描述下,不是很明白你的意思。

0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信