微信小程序

this在文件中需定义变量操作

js文件部分代码


Page({
  data: {
    searchKeyword: '',  //需要搜索的字符  
    searchList: [], //放置返回数据的数组  
    isFromSearch: true,   // 用于判断searchList数组是不是空数组,默认true,空的数组  
    searchPageNum: 1,   // 设置加载的第几次,默认是第一次  
    searchPageCount:20,//分页条数
    callbackcount: 15,      //返回数据的个数  
    searchLoading: false, //"上拉加载"的变量,默认false,隐藏  
    searchLoadingComplete: false,  //“没有数据”的变量,默认false,隐藏 
    // 页面总高度将会放在这里
    windowHeight: 0,
    // header的高度
    headerHeight: 0,
    // scroll-view的高度
    scrollViewHeight: 0,
    tempImgData:[],//图片临时存放
  },
  onLoad: function (option) {
    let that = this;
    // 先取出页面高度 windowHeight
    wx.getSystemInfo({
      success: function (res) {
        that.setData({
          windowHeight: res.windowHeight
        });
      }
    });
    console.log("windowHeight:" + that.data.windowHeight)
    // 然后取出navbar和header的高度
    // 根据文档,先创建一个SelectorQuery对象实例
    let query = wx.createSelectorQuery().in(this);
    // 然后逐个取出navbar和header的节点信息
    // 选择器的语法与jQuery语法相同
    query.select('#searchBar').boundingClientRect();

    // 执行上面所指定的请求,结果会按照顺序存放于一个数组中,在callback的第一个参数中返回
    query.exec((res) => {
      // 分别取出navbar和header的高度
      let headerHeight = res[0].height;

      // 然后就是做个减法
      let scrollViewHeight = this.data.windowHeight - headerHeight;
      console.log("scrollViewHeight:" + scrollViewHeight)
      // 算出来之后存到data对象里面
      this.setData({
        scrollViewHeight: scrollViewHeight
      });
    });
    that.fetchSearchList();
  },
})

.wxml

<view class="search">
  <view id="searchBar" class="search-bar">
    <view class="search-wrap">
      <icon type="search" size="16" class="icon-search" />
      <input type="text" placeholder="请输入搜索内容" class="search-input" name="searchKeyword" bindinput="bindKeywordInput" value="{{searchKeyword}}" />
    </view>
    <view class="search-cancel" bindtap="keywordSearch">搜索</view>

    <navigator url="../myinfo/myinfo" open-type="navigate">
      <view class="search-cancel">上传</view>
    </navigator>

  </view>
  <view>
    <scroll-view scroll-y="true" style="height: {{scrollViewHeight}}px;" bindscrolltolower="searchScrollLower">
      <view style="flex-direction:column;display: flex;">
        <view id="demo1" style="position:relative;font-size: 36rpx;padding:3px;flex-direction:row;display: flex;border-bottom:1px;" wx:for="{{searchList}}" wx:key="unique" data-data="{{item}}">
          <image style="width:250px;height:180px;" mode="widthFix" src="{{item.filePath}}"></image>
          <view style="flex-direction:column;font-size:30rpx;position:relative;display: flex;height:60px;padding-top:10px;">
            <text style="font-size:28rpx;color: #BEBEBE;">{{item.name}}</text>
            <text style="font-size:30rpx;color: #BEBEBE;">{{item.message}}</text>
          </view>
        </view>
        <view style="margin: 0 auto;width: 450rpx;height: 2rpx;background-color: #D8D8D8;"></view>
      </view>
      <view class="loading" hidden="{{!searchLoading}}">正在载入更多...</view>
      <view class="loading complete" hidden="{{!searchLoadingComplete}}">已加载全部</view>
    </scroll-view>
  </view>
</view>

let that = this;

函数中的this与当前的this不同;

动态获取页面的高度

windowHeight页面总长度
header的高度headerHeight
scroll-view的高度scrollViewHeight

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
OneNet 微信小程序是由中国移动推出的一款用于物联网应用开发的工具。它基于微信小程序的开发框架,结合了中国移动的物联网平台 OneNet,提供了丰富的物联网功能和接口。 OneNet 微信小程序可以实现设备接入和控制、数据采集和展示、消息推送等一系列物联网应用的开发。与传统的物联网应用开发相比,OneNet 微信小程序具有以下几个优势: 首先,OneNet 微信小程序的开发门槛较低,使用的是微信小程序的开发框架,开发者可以使用熟悉的前端开发技术进行开发。同时,OneNet 提供了丰富的开发文档和示例,为开发者提供了便捷的开发环境。 其次,OneNet 微信小程序与微信生态系统的无缝对接,可以直接通过微信小程序实现设备的远程控制和数据采集。用户只需要在微信小程序中注册设备并进行绑定,即可通过手机随时随地对设备进行控制和监测。 再次,OneNet 微信小程序支持多种数据展示方式,包括图表、列表和地图等,用户可以根据实际需要选择最合适的展示形式。同时,OneNet 提供了数据分析和报表功能,可以对设备的历史数据进行分析和展示,帮助用户更好地了解设备的运行状态和趋势。 总而言之,OneNet 微信小程序是一款功能强大且易于开发的物联网应用开发工具,为开发者和用户提供了便捷的物联网应用开发和使用体验。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值