Posted in Javascript onMarch 05, 2020
问题描述
学习小程序的小伙伴可能会有这样的问题:微信小程序的页面内容要发生改变,在小程序中如何快速的来创造一个格式相同,但仅仅改变内容且易于改变的页面呢?接下来就来解决这个问题吧。
解决方案
整体思路是创建一个数组,将页面内容写进数组,利用for循环来达到遍历数组的目的,从而实现利用数组的变量来改变页面的内容。
第一步:首先在 js页面在 data 中创建一个数组名为 sums ,并在数组当中添加内容。
代码示例:
data: { sums:[{ imgone:"/pages/img/ 一人之下 .jpg", imgtwo:"/pages/img/ 天行九歌 .jpg", imgthree:"/pages/img/ 播放 .png", textone:" 一人之下 ", texttwo:" 天行九歌 " },{ imgone: "/pages/img/ 鬼灭之刃 .jpg", imgtwo: "/pages/img/ 魁拔 .jpg", imgthree: "/pages/img/ 播放 .png", textone: " 鬼灭之刃 ", texttwo: " 魁拔 " },{ imgone: "/pages/img/ 擅长捉弄的高木同学 .jpg", imgtwo: "/pages/img/ 镇魂街 .jpg", imgthree: "/pages/img/ 播放 .png", textone: " 擅长捉弄的高木同学 ", texttwo: " 镇魂街 " } ]
第二步:利用 for循环来遍历我们的数组 sums 。
代码示例:
<block wx:for="{{sums}}"> <view class="type-line"> <view class="imageone"> <image class="img-one" src="{{item.imgone}}" mode="aspectFill"></image> <image class="img-two" src="{{item.imgthree}}"></image> <text >{{item.textone}}</text> </view> <view class="imageone"> <image class="img-one" src="{{item.imgtwo}}" mode="aspectFill"></image> <image class="img-two" src="{{item.imgthree}}"></image> <text >{{item.texttwo}}</text> </view> </view> </block>
利用 for循环所循环的数组,此处的 item 代表数组所循环此处的元素。
第三步:添加css样式。
代码示例:
.type-line{ display: flex; flex-flow: row; justify-content: space-evenly; } .search{ margin-top: 5px; margin-left: 50px; width: 160px; height: 25px; border-radius: 20px; background-color: whitesmoke } .titleone{ width: 100%; height: 50px; display: flex; flex-flow: row } .imagesize{ width: 20px; height: 20px; } .images{ width: 40px; height: 40px; margin-left: 15px; border-radius: 50%; } .boxs{ width: 100px; height: 30px; } .imagesone{ margin-left: 60px; width: 25px; height: 25px; margin-top: 5px; } .imageone{ margin-top: 20px; width: 180px; height: 150px; border-radius: 10px; background-color: whitesmoke; }
最终效果:
总结
到此这篇关于微信小程序利用for循环解决内容变更问题的文章就介绍到这了,更多相关小程序内容变更内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!
微信小程序利用for循环解决内容变更问题
- Author -
算法与编程之美声明:登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。
Reply on: @reply_date@
@reply_contents@