公交查询小程序程序

微信   2024-12-25 13:17   67   0  

19078_vxjk_9405.png

19078_lk4y_6927.png

index.wxml

<!--pages/route/route.wxml-->
<!--请输入公交路线模块-->
<block wx:if = "{{isSearch}}">
  <view class="route_search_box center">
  <view class="search_box text_center">
    <text class="text_search center">search</text>
    <input class="text_input center" bindinput="searchInputEvent" type="text" placeholder="请输入公交线路"/>
    <text class="text_back center">back</text>
  </view>
  </view>
</block>
<!--请输入公交路线内容-显示模块-->
<block wx:if = "{{isList}}">
  <view class="search_content_box center">
  <view class="content_list">
    <view class="content_item align_center" bindtap="itemEvent" wx:for="{{searchArray}}" wx:key="unique" data-index="{{index}}">
    {{index}}:{{item.name}}
    </view>
  </view>
  </view>
</block>
<!--当点击搜索到的公交线路时,跳转到显示公交路线模块-->
<block wx:if="{{isDetail}}">
  <view class="route_show_box">
    <view class="route_show_content center">
      <view class="route_name align_center">
        {{itemData}}:{{itemData}}
      </view>      
    </view>
    <view class="route_time center">
      <text class="text_time align_center">运营时间</text>
    </view>
    <view class="route_detail_box center">
      <view class="route_detail">
        <view class="detail_left center" style="background:{{back1}};" bindtap="routeFindEvent">线路查询</view>
        <view class="detail_right center" style="background:{{back2}};" bindtap="routeBackEvent">返回路线</view>
      </view>
    </view>
  </view>
</block>

index.js

// pages/route/route.js
Page({
  data:{
    isSearch: true,
    isList: false,
    isDetail: false,
    itemData: "",
    back1: "red",
    back2: "",
    searchArray: []
  },
  onLoad:function(options){
    // 页面初始化 options为页面跳转所带来的参数
  },
  onReady:function(){
    // 页面渲染完成
  },
  onShow:function(){
    // 页面显示
  },
  onHide:function(){
    // 页面隐藏
  },
  onUnload:function(){
    // 页面关闭
  },
  /**
   *  函数名:searchEvent
   *  功能:挡在请输入路线输入框中输入内容时,触发此事件
   */
  searchInputEvent: function(e){
    //console.log("searchEvent");
    var data = e.detail.value;
    var _this = this;
    this.setData({
      isList: true
    })
    wx.request({
      //非真实接口
      url: 'http://w.mmmm.com/search2016/search/wods',
      data:{
        keywords: data,
        city: 110000
      },
      method: "GET",
      success: function(res){
        //console.log("res",res);
        _this.setData({
          searchArray: res.data.pois
        })
      },
      fail: function(){
        console.log("请求失败!");
      }
    })
  },
  /**
   *  函数名:itemEvent
   *  功能:当在搜索框中输入内容时,显示搜索到的内容模块
   */
  itemEvent: function(e){
    //console.log(e);
    let i = e.target.dataset.index;
    let searchItemData = this.data.searchArray;
    //console.log(searchItemData);
    let itemData = searchItemData[i].name;
    //console.log(itemData);
    //console.log(i);
    this.setData({
      isSearch: false,
      isList: false,
      isDetail: true,
      itemData: itemData
    })
  },
  /**
   *  函数名:routeFindEvent
   *  功能: 实现点击切换
   */
  routeFindEvent: function(){
    console.log("aa");
    this.setData({
      back1: "red",
      back2: ""
    })
  },
  /**
   *  函数名:routeBackEvent
   *  功能:实现点击切换
   */
  routeBackEvent: function () {
    this.setData({
      back1: "",
      back2: "red"
    })
  }
})

index.wxss

/* pages/route/route.wxss */
/*搜索框模块*/
.route_search_box{
  width: 100%;
  height: 120rpx;
}
.search_box{
  width: 90%;
  height: 80rpx;
  border-radius: 20rpx;
  border: 2rpx solid #ccc;
}
.text_search{
  background: #9f9;
}
.text_input{
  height: 80rpx;
}
.text_back{
  background: #9f9;
}
/*搜索框搜索内容模块*/
.search_content_box{
  width: 100%;
  height: auto;
  background: #f99;
}
.content_list{
  width: 90%;
  height: auto;
}
.content_item{
  width: 100%;
  height: 60rpx;
  margin: 10rpx 0;
  background: #9ff;
}
/*路线详情页面*/
.route_show_box{
  width: 100%;
  height: auto;
}
.route_show_content{
  width: 100%;
  height: 60rpx;
}
.route_name{
  width: 90%;
  height: 60rpx;
  border-bottom: 2rpx solid #ccc;
}
.route_time{
  width: 100%;
  height: 80rpx;
  background: #f4f4f4;
  border-bottom: 2rpx solid #ccc;
}
.text_time{
  width: 90%;
  height: 100%;
}
.route_detail_box{
  width: 100%;
  height: 80rpx;
}
.route_detail{
  width: 90%;
  height: 40rpx;
  display: flex;
  border: 5rpx solid #9f9;
  border-radius: 20rpx;
}
.detail_left{
  flex: 1;
  height: 40rpx;
  border-radius: 20rpx 0 0 20rpx;
}
.detail_right{
  flex: 1;
  height: 40rpx;
  border-radius: 0 20rpx 20rpx 0;
}


来源:https://blog.csdn.net/boysky0015/article/details/73476753

博客评论
还没有人评论,赶紧抢个沙发~
发表评论
说明:请文明发言,共建和谐网络,您的个人信息不会被公开显示。