首页 > 小程序教程 > 微信小程序政务资讯新闻页面设计制作开发教程

微信小程序政务资讯新闻页面设计制作开发教程

上一篇 下一篇
本文给大家带来的是微信小程序政务资讯新闻页面设计制作开发教程,制作好以后效果图如下:
一、wxml页面代码如下:
<import src="HotNewsCell/HotNewsCell.wxml" />
<import src="GridIconCell/GridIconCell.wxml" />

<!--index.wxml-->
<view>
  <swiper catchtap="onSwiperTap" vertical="{{false}}" indicator-dots="true" autoplay="true" interval="5000">
    <block wx:for="{{carrouselsAr}}" wx:for-item="item" wx:for-index="index" wx:key="key">
      <swiper-item>
        <image id="7" src="http://gov.jointem.com/{{item.adImage}}"></image>
      </swiper-item>
    </block>
  </swiper>
  <view class="iconList-container">
    <block wx:for="{{iconList}}" wx:for-item="item" wx:for-index="idx" wx:key="key">
      <view class="iconList-container-block" catchtap="tapGridCell" data-icon-id="{{idx}}">
        <template is="GridIconCell" data="{{...item}}"></template>
      </view>
    </block>
  </view>
  <view class="spaceSeparateView"></view>
  <view class="yaowen-container">
    <text class="yaowen">要闻</text>
  </view>
  <block wx:for="{{list}}" wx:for-item="item" wx:key="key">
    <view class="hotNewsList-container" catchtap="tapHotNewsCell">
      <template is="HotNewsCell" data="{{...item}}"></template>
    </view>
  </block>
</view>
 
二、wxss样式文件代码如下:
@import "HotNewsCell/HotNewsCell.wxss";
@import "GridIconCell/GridIconCell.wxss";

/**index.wxss**/
swiper {
  width: 100%;
  height: 312.5rpx;
}

swiper image {
  width: 100%;
  height: 312.5rpx;
}

.iconList-container {
  flex-direction: row;
  display: flex;
  width: 100%;
  height: 160rpx;
}

.iconList-container-block {
  flex-direction: row;
  display: flex;
  width: 25%;
  height: 160rpx;
}

.yaowen-container {
  height: 52rpx;
  width: 100%;
  border-top: 1px solid #ededed;
  border-bottom: 1px solid #0164a6;
}

.yaowen {
  line-height: 52rpx;
  margin-left: 12px;
  font-weight: bold;
  font-size: 15px;
  color: #405f80;  
}

.hotNewsList-container {
  flex-direction: column;
  display: flex;

}
三、js页面代码如下:
//index.js
//获取应用实例
var app = getApp()
const config = require('../../config')
const iconList = require('../../data/local-data')
var util = require('../../utils/util.js')

var pageNo = 0;
Page({
  data: {
    carrouselsAr: [], /** 轮播 */
    list: [],  /** 要闻列表 */
  },

  /** 跳转(政务资讯、办事指南、办事大厅、办事攻略) */
  tapGridCell: function (event) {
    switch (event.currentTarget.dataset.iconId) {
      case 0:
        console.log("点击政务资讯")
        break
      case 1:
        console.log("点击办事指南")
        break
      case 2:
        console.log("点击办事大厅")
        break
      case 3:
        console.log("点击办事攻略")
        break
    }

     wx.navigateTo({
      url: 'temp/temp'
    })
  },

  /** 跳转要闻详情页面 */
  tapHotNewsCell: function (event) {
    wx.navigateTo({
      url: 'HotNewsDetail/HotNewsDetail'
    })
  },

  /** 首页轮播请求 */
  requestAppinitData: function(){
    var that = this;
    let url = config.AppinitData

    var para = {
      "system": "02",
      "currentVersion": "3.1.81",
      "imei": "C75C7019-29FA-4F2B-8311-BAA6F29D1845",
      "model": "iPhone 5s (A1457/A1518/A1528/A1530)",
      "systemVersion": "10.3.2",
      "accessToken": "",
      "sig": "",
      "scopeAddressCode": ""
    }

    wx.showLoading({ title: '加载中...' })

    util.RequestManager(url, para, function (res, fail) {

      wx.hideLoading()

      if (res.code == app.globalData.res_success) {
        //成功
        that.setData({ carrouselsAr: res.data.carrousels})
      }
    })

  },

  /** 下拉刷新 */
  loadNewData: function () {
    pageNo = 1;
    this.requestData()

  },

  loadNewData_NextPage: function () {
    pageNo += 1;
    this.requestData();
  },

  requestData: function () {
    var that = this

    wx.request({
      url: config.GET_HOT_NEWS,
      data: {
        "system": "02",
        "tagId": "1",
        "accessToken": "",
        "scopeAddressCode": "",
        "key": "",
        "systemVersion": "10.3.1",
        "imei": "A902EA47-B1B2-452A-96FB-4C7BCCBB149C",
        "currentVersion": "3.1.6",
        "sig": "",
        "pageNo": pageNo,
        "model": "iPhone 6s Plus (A1699)",
        "pageSize": "20"
      },
      method: 'POST', // OPTIONS, GET, HEAD, POST, PUT, DELETE, TRACE, CONNECT
      header: { 'content-type': 'application/json' }, // 设置请求的 header
      success: function (res) {
        // success
        if (pageNo == 1) {
          that.setData({ list: res.data.data.list })
          
        }else {
          that.setData({ list: that.data.list.concat(res.data.data.list) })

        }

        console.log(that.data.list)
        
      },
      fail: function (res) {
        // fail
        pageNo--;
      },
      complete: function (res) {
        // complete
        wx.stopPullDownRefresh()
      }
    })

  },


  onLoad: function () {
    console.log('onLoad')
    /** 设置首页四图标 */
    console.log(iconList)
    this.setData(iconList)

    /** 请求首页轮播 */
    this.requestAppinitData();

    /** 请求要闻 */
    this.loadNewData();

    //调用应用实例的方法获取全局数据
    // app.getUserInfo(function(userInfo){
    //   //更新数据
    //   that.setData({
    //     userInfo:userInfo
    //   })
    // })
  },
  onSwiperTap: function (event) {
    // target 和currentTarget
    // target指的是当前点击的组件 和currentTarget 指的是事件捕获的组件
    // target这里指的是image,而currentTarget指的是swiper
    var postId = event.target.dataset.postid;
    wx.navigateTo({
      url: "post-detail/post-detail?id=" + postId
    })
  },
  onPullDownRefresh: function () {
    // 页面相关事件处理函数--监听用户下拉动作
    this.loadNewData();

  },
  onReachBottom: function () {
    // 页面上拉触底事件的处理函数
    console.log("onReachBottom")
    
    this.loadNewData_NextPage()
  },


})

模板简介:该模板名称为【微信小程序政务资讯新闻页面设计制作开发教程】,大小是,文档格式为.,推荐使用打开,作品中的图片,文字等数据均可修改,图片请在作品中选中图片替换即可,文字修改直接点击文字修改即可,您也可以新增或修改作品中的内容,该模板来自用户分享,如有侵权行为请联系网站客服处理。欢迎来懒人模板【小程序教程】栏目查找您需要的精美模板。

相关搜索
  • 下载密码 lanrenmb
  • 下载次数 26,228次
  • 使用软件
  • 文件格式
  • 文件大小
  • 上传时间 07-25
  • 作者 网友投稿
  • 肖像权 人物画像及字体仅供参考
栏目分类 更多 >
热门推荐 更多 >
企业网站 微信公众平台 微信素材 微信文章 响应式 自适应 html5 微信模板 微信图片 单页式简历模板
您可能会喜欢的其他模板