微信小程序-swiper轮播图圆角滑动会先直角再圆角的解决办法

微信小程序-swiper轮播图圆角滑动会先直角再圆角的解决办法,第1张

项目中,轮播图原本的直角觉得不够美观,于是设置了圆角border-radius: 10rpx;,但是会出现一个bug就是,滑动过程中先显示的直角,等滑动一整张之后才会变成圆角。

这个问题真的是苦恼了半天呢,因为在父级上设置了overflow: hidden;然而在iOS真机上并不买账~

1、首先在轮播图的最外层,先设置好圆角,也就是top_img这个view的样式

2、然后在swiper样式上设置ovewflow:hidden;border-radius:10rpx;

很多百度出来的结果都是这样解决的,我不明白,难道只有我的iOS真机上不好用吗?

加上这关键一句之后,问题才得以解决!赶快记录下来,希望可以帮助到跟我遇到相同问题的伙伴们

//第一层循环

<view wx:for="{{arr}}" wx:key="index">

    <view>{{itemname}}</view>

    //第二层循环,修改item、index名称

    <view wx:for="{{itemprocess}}" wx:for-item="itema" wx:for-index="indexa" wx:key="indexa">

        // 判断是哪种结构

        <block wx:if="{{itemagoods_name}}">

            <view>{{itemagoods_name}}</view>

        </block>

        <block wx:else>

            <view>{{itematype}}</view>

            //第三层判断是否是数组

            <block wx:if="{{itemastate && itemastate[0] && itemastate[0]time}}">

                <view wx:for="{{itemastate}}" wx:for-item="itemb" wx:for-index="indexb" wx:key="indexb">{{itembtime}}</view>

            </blcok>

            <blcok wx:else>

                <view>{{itemastate}}</view>

            </blcok>

        </block>

    </view>

</view>

wxml内容:

<view bindtap="a" data-f="{{flag}}">123</view>

<!-- wx:for="{{数组}}" 循环需要绑定key wx:key="index"-->

<!-- 自带定义 item 表示数组的每一项 index 表示数组的索引 -->

<!-- 使用wx:for-item修改每一项值的key -->

<!-- 使用wx:for-index修改每一项值的index -->

<view wx:for="{{list}}" class="t" wx:key="i" 

    wx:for-item="r" wx:for-index="i"

    style="color:{{rstyFlag'red':''}};"

    data-i="{{i}}"

    bindtap="choose"

>

    {{rname}}--{{i}}

</view>

js内容:

data: {

        flag:1,

        list:['冰墩墩','雪融融','小泡菜'],

        list:[{

            name:'冰墩墩',

            styFlag:true

        },{

            name:'雪融融',

            styFlag:false

        },{

            name:'小泡菜',

            styFlag:false

        }]

    },

    choose:function(e){

        let { currentTarget:{ dataset:{i} } } = e;

        / 第一步获取点击的当前的内容的索引 /

        consolelog(i)

        / 排他 把所有的先置空 /

        thisdatalistforEach(r=>{

            rstyFlag = false

        })

        thisdatalist[i]styFlag = true;

        / 数据变了 视图没变 必须要使用setData实现数据和视图的双向数据绑定 /

        thissetData({

            list:thisdatalist

        })

    },

    a:function(e){

        consolelog(e)

    },

效果:

wxml内容:

<button bindtap="go1" style="margin: 3px;">张三</button>

<button bindtap="go2" style="margin: 3px;">李四</button>

<button bindtap="go3" style="margin: 3px;">24号</button>

<button bindtap="go4" style="margin: 3px;">不带参数</button>

<button bindtap="goBack">返回上一级</button>

<!-- wx:if 和 wx:elif 以及wx:else之间不可以被其他的标签打断 -->

<block>

    <view wx:if="{{msg=='zhangsan'}}" class="t">欢迎回来主人</view>

    <view wx:elif="{{msg=='lisi'}}" class="t">家里水龙头没有坏不要过来</view>

    <view wx:elif="{{msg=='24'}}" class="t">您好欢迎为您服务</view>

    <view wx:else class="t">显示家里没人</view>

</block>

js内容:

Page({

    /

      页面的初始数据

     /

    data: {

        msg:""

    },

    goBack:function(){

        wxnavigateBack()

    },

    /

      生命周期函数--监听页面加载

     /

    onLoad: function (options) {

        consolelog(optionsname)

        / 多次使用setData会影响性能 尽量把多次setData 使用一次setData来实现

        尽量少的使用setData来提高小程序的性能 /

        thissetData({

            msg:optionsname

        })

        / 如果名字叫张三 页面显示欢迎回来主人 /

        / 如果名字叫李四 页面显示家里水龙头没有坏不要过来 /

        / 如果名字叫24号 页面显示您好欢迎为您服务 /

        / 都不是 显示家里没人 /

    },

    /

      生命周期函数--监听页面初次渲染完成

     /

    onReady: function () {

    },

    /

      生命周期函数--监听页面显示

     /

    onShow: function () {

    },

    /

      生命周期函数--监听页面隐藏

     /

    onHide: function () {

    },

    /

      生命周期函数--监听页面卸载

     /

    onUnload: function () {

    },

    /

      页面相关事件处理函数--监听用户下拉动作

     /

    onPullDownRefresh: function () {

    },

    /

      页面上拉触底事件的处理函数

     /

    onReachBottom: function () {

    },

    /

      用户点击右上角分享

     /

    onShareAppMessage: function () {

    }

})

{

  "pages": [

    "pages/index/index",

    "pages/forpage/forpage",

    "pages/mypage/mypage",

    "pages/logs/logs",

    "pages/fenglei/fenglei"

  ],

  "window": {

    "backgroundTextStyle": "dark",

    "navigationBarBackgroundColor": "#FF0000",

    "navigationBarTitleText": "kw47page",

    "navigationBarTextStyle": "white"

  },

  "tabBar": {

    "color": "#fff",

    "selectedColor": "#FFCA28",

    "backgroundColor": "#000",

    "list": [{

      "pagePath": "pages/index/index",

      "text": "首页",

      "iconPath": "",

      "selectedIconPath": ""

    }, {

      "pagePath": "pages/logs/logs",

      "text": "日志",

      "iconPath": "",

      "selectedIconPath": ""

    }]

  },

  "style": "v2",

  "sitemapLocation": "sitemapjson"

}

效果图:

微信轮播图下载教程。

打开微信开发者工具,进行小程序开发

微信小程序如何加载轮播图,进入微信开发者工具,进入wxml文件进行编写

微信小程序如何加载轮播图,添加swiper组件实现轮播图

微信小程序如何加载轮播图,打开模拟器,查看轮播图实现效果

当我们在手机上打开一个微信小程序,首先看到的就是小程序顶部的banner。通过顶部轮播图,商家可以展示主打产品、各种品牌信息、新的营销活动等等。这是品牌的第一印象,除了必要的节日外,小程序的首页就奠定了整个小程序的基调。比如下面两张,虽然是同样的轮播图,但是其实在使用的时候它的模式和状态是完全不同的。

在尺寸方面,大图和小图呈现的效果会完全不同,对于零售类的商品,一般以小图为主,呈现“热卖”、“热销”“实惠”的样式,而对于主打品牌品质类的商品,一般会以大图的模式,推广当季或是店铺主推产品。

在播放方面,小程序的首页轮播图是可以调节轮播图静止时间和轮播速度的,轮播图静止时间应该尽量控制在3秒左右,不同的品牌可以有不同的速度,比如零售类和主打品质类的产品对比,零售类可以稍微快一些,以数量和种类吸引消费者注意,而主打品牌类产品可以让消费者更好地看清楚,时间可以稍微长一些。

一般大家的浏览习惯是从左到右、从上到下,因此,商家要想把自己的小程序做得吸引人,就需要根据自己的产品类目好好设计小程序的头图,以便能让访客快速了解到你。

以上就是关于微信小程序-swiper轮播图圆角滑动会先直角再圆角的解决办法全部的内容,包括:微信小程序-swiper轮播图圆角滑动会先直角再圆角的解决办法、微信小程序3层循环、微信小程序for循环以及页面跳转等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/9518568.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-29
下一篇2023-04-29

发表评论

登录后才能评论

评论列表(0条)

    保存