转载

小程序之轮播图

2019-06-09  本文已影响0人  biyu6

一、js

 data: {
    host: getApp().globalData.baseUrl,
    carouselList:[],
  },
 onLoad: function (options) {
    this.requestCarouselListData();//请求轮播图
  },
  //请求轮播图
  requestCarouselListData(){
    var that = this;//注意this指向性问题
    var urlStr = that.data.host + "/xjj/chome_carousel_list.json"; //请求连接注意替换(我用本地服务器模拟)
    console.log("请求轮播图:" + urlStr);
    wx.request({
      url: urlStr,
      data: {//这里放请求参数,如果传入参数值不是String,会被转换成String 
        // x: '',
        // y: ''
      },
      header: {
        'content-type': 'application/json' // 默认值
      },
      success(res) {
        console.log("轮播图返回值:");
        console.log(res.data.result);
        var resultArr = res.data.result;
        that.setData({
          carouselList: resultArr
        })
      }
    })
  },

//点击了轮播图
chomeCarouselClick: function (event) {
    var urlStr = event.currentTarget.dataset.url;
    console.log("点击了轮播图:" + urlStr);
    // wx.navigateTo({
    //   url: 'test?id=1'
    // })
  },

2. wxml

<!-- 轮播图 -->
<view class='carousel'> 
  <swiper class='carousel_swiper' indicator-dots="true" indicator-color="#f4f4f4" indicator-active-color="#4eb8b8" autoplay="true" interval='2000' circular='true'>
    <block wx:for="{{carouselList}}" wx:key="key">
      <swiper-item bindtap='chomeCarouselClick' data-url='{{item.url}}'>
        <image class="carouselImg" src='{{host}}{{item.img}}' mode='aspectFill' ></image>
      </swiper-item>
    </block>
  </swiper>
 </view>
/*几个有用的说明:
  indicator-dots 是否显示指示器
  indicator-color 指示器默认颜色
  indicator-active-color   指示器选中颜色
  autoplay 是否自动播放
  interval 每一页停留的时长
  circular 播放到最后一页后是否再衔接第一页循环播放
*/

三、wxss

page { //这个是当前页整体的背景色
  background-color: #f4f4f4;
}
.carousel{
  width: 100%;
  background-color: rebeccapurple;
}
.carousel_swiper{
  width: 100%;
  height: 400rpx;
  display: block;
  position: relative;
  background: #f4f4f4;
}
.carouselImg{
  width: 100%;
  height: inherit;
}
运行截图.png

附件

本地服务器 轮播图的数据 chome_carousel_list.json
{
    "result": [{
            "id": "101",
            "img": "/xjj/img/carousel_1.png",
            "title": "",
            "url": "https://www.baidu.com/"
        },
        {
            "id": "102",
            "img": "/xjj/img/carousel_2.png",
            "title": "百度翻译",
            "url": "https://fanyi.baidu.com/"
        },
        {
            "id": "103",
            "img": "/xjj/img/carousel_3.png",
            "title": "百度地图",
            "url": "https://map.baidu.com/"
        },
        {
            "id": "104",
            "img": "/xjj/img/carousel_4.png",
            "title": "简书是一个写博客的网站,挺好用的,可以试试看",
            "url": "https://www.jianshu.com/"
        }
    ]
}
上一篇下一篇

猜你喜欢

热点阅读