小程序中如何添加列表?
数据加载
js数据:
添加一个array名称的列表
1 Page({ 2 data: { 3 array: ['C#', 'Java', 'Python', 'Nodejs', 'Electron'] 4 } 5 })
wxml前端:
绑定array列表,使用微信封装的for循环遍历数据。
{{item}}为列表项数据,item在微信框架语法中指定列表项,不能是aaa之类随便的名称。
1 <view class="container"> 2 <view wx:for="{{array}}"> {{item}} </view> 3 </view>
如果item改为index,输出的则是列表项的序号
使用index+item,可以输出带序号的列表:
1 <view class="container"> 2 <view wx:for="{{array}}"> {{index+item}} </view> 3 </view>
使用index+数字时,<view wx:for="{{array}}"> {{index*10}} </view>,能自动解析数据类型,对数字进行运算
使用数字或者字符串,则输出的是输入值,比如<view wx:for="{{array}}"> {{‘item’}} </view>
列表数据模板加载
定义数据:
1 Page({ 2 data:{ 3 list: [ 4 { firstName: 'Hulk', lastName: 'Hu' }, 5 { firstName: 'Shang', lastName: 'You' }, 6 { firstName: 'Gideon', lastName: 'Lin' } 7 ] 8 } 9 })
使用模板填充:
1 <view class="container"> 2 <template name="staffName"> 3 <view> 4 firstName: {{firstName}}, lastName: {{lastName}} 5 </view> 6 </template> 7 8 <template is="staffName" data="{{...list[0]}}"></template> 9 <template is="staffName" data="{{...list[1]}}"></template> 10 <template is="staffName" data="{{...list[2]}}"></template> 11 </view>
使用for遍历数据:
...表示 扩展运算符,来将一个对象展开。{{...item}},即为 {{ firstName: 'Hulk', lastName: 'Hu' }}
1 <view class="container"> 2 <template name="staffName"> 3 <view> 4 firstName: {{firstName}}, lastName: {{lastName}} 5 </view> 6 </template> 7 <view wx:for="{{list}}"> 8 <template is="staffName" data="{{...item}}"></template> 9 </view> 10 </view>