微信小程序 项目实战(二)board 首页

本文介绍了一个基于微信小程序实现的豆瓣电影榜单应用开发过程。该应用通过调用豆瓣API获取即将上映的电影海报并以轮播图形式展示,同时提供不同类型的电影榜单导航。主要涉及页面逻辑处理、布局设计及样式定义。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.项目结构

2.页面

(1)数据(逻辑)

board.js

// pages/board/board.js
Page({

  /**
   * 页面的初始数据
   */
  data: {
    imgWrap: []
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    const _this = this;
    // 请求数据
    wx.request({
      url: 'https://api.douban.com/v2/movie/coming_soon',
      data: {},
      header: {
        'content-type': 'json' // 默认值
      },
      success: function(res){
        const data = res.data.subjects.slice(0,5);
        _this.setData({
          imgWrap: data
        })
      }
    })
  }
})

(2)布局

board.wxml

<!--pages/board/board.wxml-->
<view>
  <!-- 轮播图 -->
  <view class='slide'>
    <swiper indicator-dots='true' autoplay='true' interval='8000' duration='1000'>
      <block wx:for="{{imgWrap}}" wx:key="id">
        <swiper-item>
          <image src='{{item.images.large}}' class='slide-image' width="355" height="150" mode='aspectFill'/>
        </swiper-item>
      </block>
    </swiper>
  </view>
  <!-- 标题 -->
  <view class='title-wrap'>
    <text class='title'>豆瓣电影榜单集合</text>
    <text class='desc'>最新,最IN的影视信息收集~</text>
  </view>
  <!-- 榜单部分 -->
  <view class='board'>
    <!-- 正在热映 -->
    <navigator url='../list/list?type=in_theaters&title=正在热映' hover-class='none'>
      <view class='board-item'>
        <text>正在热映</text>
        <image src='../../images/arrowright.png' mode='aspectFill'></image>
      </view>
    </navigator>
    <!-- 即将热映 -->
    <navigator url='../list/list?type=coming_soon&title=即将上映' hover-class='none'>
      <view class='board-item'>
        <text>即将上映</text>
        <image src='../../images/arrowright.png' mode='aspectFill'></image>
      </view>
    </navigator>
    <!-- TOP250 -->
    <navigator url='../list/list?type=top250&title=TOP250' hover-class='none'>
      <view class='board-item'>
        <text>TOP250</text>
        <image src='../../images/arrowright.png' mode='aspectFill'></image>
      </view>
    </navigator>
    <!-- 北美票房榜 -->
    <navigator url='../list/list?type=us_box&title=北美票房榜' hover-class='none'>
      <view class='board-item'>
        <text>北美票房榜</text>
        <image src='../../images/arrowright.png' mode='aspectFill'></image>
      </view>
    </navigator>
  </view>
</view>

(3)样式

board.wxss

/* pages/board/board.wxss */
.slide swiper {
  height: 400rpx;
}
.slide-image {
  width: 100%;
  height: 100%;
}
.title-wrap {
  margin-top: 30rpx;
  padding-left: 70rpx;
}
.title-wrap .title{
  display: block;
  font-size: 50rpx;
}
.title-wrap .desc {
  margin-top: 20rpx;
  display: block;
  font-size: 30rpx;
  color: #808080;
}
.board {
  display: flex;
  flex-direction: column;
  padding: 30rpx;
}
.board .board-item {
  flex: 1;
  border: 1rpx solid #eee;
  margin-top: 20rpx;
  padding: 30rpx;
  display: flex;
  background-color: #fff8dc;
  /*移动端展示:元素点击时高亮*/
  cursor: pointer;
}
.board text {
  flex: 1;
  font-size: 30rpx;
}
.board image {
  width: 40rpx;
  height: 40rpx;
}

3.效果图

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值