这是基于之前发布 Google Play 的 iPixel Wallpaper APP 修改而来,本就不是为了运营,只是录做视频与文章使用,有兴趣的可以看看,当前还有 Web 版本的,目前都在同步更新中。 本文先写写首(⛴)页的内容吧,其他页面后续更新。 最近滚回原生党,除非巨型项目,否则都会使用原生,包括(🍕)但不限于小程序。 标签列表 效果:(🤱) 相关(😊)代码: html 这里应该使用 scroll-view,然后(🔫)设置 x 方向滚动。因为当时写顺手了,就弄了个 view,然后手动 css 设置 x 滚动,据说性能是差一点,但是既然代码这样,就先这样放出来,当(👌)个反面教(🌺)材。 然后,wx:for 与 wx:key 是一对冤家,基本都是一起出现,for 是循环好理解,key 是避免 for 生成的节点不唯一导致的一些(🐿) bug,这里不细说,简单记下就是一起出现即可(👛)。对(🖊)了,key 要唯一,所以一般来说,index 是最好的小伙伴。 bindtap 就是 click 事件的(⏳)“别名(🎶)”了,但道理上是不一样的,这样记问题(🚟)不大。 data-index 就是绑定的数(🛏)据,可以在 js 里面类似 DOM data 属性一样获取到。 “{{x}}” 就是获取 js 里面声明的 data 绑定数据了,这个 data 数据是可以自动绑定的。 其他就是跟 HTML 区别不大了,除了(✋)标签名之外。 css css 没什么说得,不说样式丑就行。 js 前两行是获取小程序实例,以及第三方相关,这里第三方就是之前项(♐)目提供数据源的地方,不(🏀)打广告,理解成后台获取资源就行,具体获取(🐞)方式在 js 里面,也不要深究。 onReady 是当前页加载前,此(👒)时获取数据,因为是异步,所以应该不会出现渲(🍻)染失败。注意是应该,个人建议(🌮)还是放(👃)在 onLoad 里面, 我这里因为是第三方官网的 Demo 拷贝,就没有去改它,等下有自己写的,我都是放在 onLoad。 React 小伙伴应该比较熟悉,这里就是小程序数据(🆘)绑定修(🐒)改方式,这种方式修改可以使得 wxml(HTML)里面“{{}}”绑定(🔲)的视图同步(💲)更新。 没错,this.data.x = y 可以修改但是不能同步更新,明白了? 注意:与 React 不同,这玩意是同步的,不是 React 那种异步,所以不存在回调处理。 tapButton 就是绑定在标签上的点击事件,与获取(⏫)图片列表有关。 那么,到(🌁)这里,整个标签列表就完成了。 图片列表 效果: 相(🍲)关代码: html wx:for-item 指定循环遍历使用的 item 名,配套的有 wx:for-index 指定循环遍历使用的 index 名。是的,默认不写就是 item、(🛹)index。这里为了语义清楚点,就设置成 url 了。 lazy-load 说是可以懒加载,不知道是不是我图量少,目前没有体验出来。还是说我用错了? 至于 mode="aspectFit 就是个人喜欢小程序的一点了,图片缩放处理已(🧘)经被框架处理好,不要自己再去配置 width、height、自动缩放等等了。具体可以看(👦)官方说明:小程序组件——image scroll-view 就不用说了,也是框架提供好的滚动视图,设置下具体宽高,在配置想方向就可以了:scroll-y 或 scroll-x。 css 由于我们是(📌)竖(💏)直方向滚动,所以设置的 #main 的高。原来是想像 APP 一样实现瀑布流,但(⬇)是发现 Grid 小程序好像不支持?就只能退而求其次的选择比较 low 的常规两列布局了。具体 Grid 的瀑布流,效果如下: 小程序的,哎…… 中间 img-container,一样是夹层(🐿),方便以后拓展。 js 注(🏙)意,默认 data 里面有一个标签,就是为了防止第一次进来(🎒)没(🎺)东西。 这个就相对简单不(💐)说那么具体,提一下需要注意的优化点(🙇): 小结 欢(🤯)迎(😞)关注,如有需(🏿)要 Web,App,小程序,请留言联系。<view id="nav"> <button class="item" bindtap='tapButton' wx:for="{{classes}}" wx:key="{{index}}" data-index="{{index}}"> {{item}} </button></view>
#nav { white-space: nowrap; overflow-x: scroll; height: 64rpx;}#nav .item { display: inline; min-width: 120rpx; line-height: 64rpx; margin: 8rpx 0; color: grey;}
//index.js//获取应用实例const app = getApp()const AV = app.globalData.AVPage({ data: { classes: ['Asuna'], images: [], }, // 获取(👪)标签列表 getClasses() { new AV.Query('CLASSES') .find() .then(res => { const classes = Array.from(res, item => item.get('className')) this.setData({ classes: classes }) }) .catch(console.error) }, // 点击标签 tapButton(e) { const className = this.data.classes[e.target.dataset.index] this.getImages(className) }, onReady() { this.getClasses() },})
this.setData({ classes: classes})
<scroll-view id='main' scroll-y> <view class='img-container' wx:for="{{images}}" wx:key="index" wx:for-item="url" data-index="{{index}}" bindtap='tapImage'> <image src="{{url}}" lazy-load mode="aspectFit"></image> </view></scroll-view>
#main { height: calc(100% - 64rpx);}.img-container { display: inline-block; width: 47%; height: 400rpx;}.img-container:nth-child(2n + 1) { margin-left: 2%; margin-right: 1%;}.img-container:nth-child(2n) { margin-left: 1%; margin-right: 2%}image { width: 100%; height: 100%;}
//index.js//获取应用实例const app = getApp()const AV = app.globalData.AVPage({ data: { classes: ['Asuna'], images: [], }, // 获取标签下图片列表 getImages(className) { this.setData({ images: [], title: className }) wx.showLoading({ title: "获取列表(🕳)数据中……" }) new AV.Query(className) .find() .then(res => { wx.hideLoading() this.setData({ images: Array.from(res, item => item.get('url')) }) }) .catch(console.error) }, onLoad() { this.getImages(this.data.classes[0]) },})
1.请问哪个网站可以免费在线观看动漫《欧美黄一级网站》?
优酷视频网友:http://www.ahxhhy.com/tv/03477686680.html
2.《欧美黄一级网站》是什么时候上映/什么时候开播的?
腾讯视频网友:上映时间为2022年,详细日期可以去百度百科查一查。
3.《欧美黄一级网站》是哪些演员主演的?
爱奇艺网友:欧美黄一级网站演员表有,导演是。
4.动漫《欧美黄一级网站》一共多少集?
电影吧网友:目前已更新到全集已完结
5.手机免费在线点播《欧美黄一级网站》有哪些网站?
手机电影网网友:美剧网、腾讯视频、电影网
6.《欧美黄一级网站》评价怎么样?
百度最佳答案:《欧美黄一级网站》口碑不错,演员阵容强大演技炸裂,并且演员的演技一直在线,全程无尿点。你也可以登录百度问答获得更多评价。
Copyright © 2008-2024