微信小程序

微信小程序,小程序的一种,英文名Wechat Mini Program,是一种不需要下载安装即可使用的应用,它实现了应用“触手可及”的梦想,用户扫一扫或搜一下即可打开应用。

工具

  1. 微信开发者工具
    下载链接:https://developers.weixin.qq.com/miniprogram/dev/devtools/download.html
  2. 微信小程序账号
    注册连接:https://mp.weixin.qq.com/cgi-bin/registermidpage?action=index&lang=zh_CN&token=

小程序优点

  1. 即用即走
  2. 在微信界面就能使用所有的服务
  3. 不需要再安装一堆并非每天都会用到的应用
  4. 节省手机内存
  5. 它可以显示为一个单独的手机应用图标,访问很方便
  6. 开发成本低,你可以轻松地发布自己的程序。

小程序页面

在这里插入图片描述

  • index.js : 逻辑页面
  • index.json : 配置页面
  • index.wxml : 结构页面
  • index.wxss : 样式页面

wxml与wxss的语法和html与css基本一致

小程序单位

在这里插入图片描述

  • pt:为逻辑分辨率,与屏幕尺寸有关, 可以理解为长度单位;
  • px:为物理分辨率,与屏幕尺寸无关,用于描述像素点的多少;
  • ppi:每英寸包含的像素点

小程序单位换算关系
iphone6下1px=1rpx=0.5pt(rpx会在不同设备下转换、而px不会)

导航栏配置

在这里插入图片描述
该文件为app.json

  • pages : 配置页面路径
  • window : 配置顶部导航栏
  • tabbar : 配置底部导航栏

事件绑定

  • bindtap 和 catchtap:catch 会阻止冒泡
  <button bindtap="newFn">你点我啊</button>
  <button catchtap="newFn">你点我啊</button>
  <button catch:tap="newFn">你点我啊</button>
  • dataset 带参数
  <button data-me="3" catch:tap="newFn">你点我啊</button>
  • 事件中布尔值

模板引用

提高模板复用性;
  1. 定义模板
<template name="a">
 <view>我自己创建的模板</view>
</template>

引入模板

  1. Import 可以在该文件中使用目标文件定义的template
  <import src="/pages/templates/a.wxml"/>
  <template is="a"></template>
  1. include 可以将目标文件除了 template 外的整个代码引入,相当于是拷贝到 include 位置
  <include src="/pages/templates/a.wxml"/>

网络请求

    wx.request({
      url: 'http://localhost:8989/getList', //仅为示例,并非真实的接口地址
      // method:"post",
      success (res) { // 请求成功后执行!!!
        console.log(res.data)
      }
    })

练习——新闻列表

  1. 获取新闻列表
  onLoad: function (options) {
    wx.request({
      url:"http://localhost:8989/getData",
      // 这里的this会受到ajax影响
      success:res=>{
        this.setData({
          newsData:res.data
        })
      } 
    })
  },
  1. 上拉加载
  onReachBottom: function () {
    wx.request({
      url:"http://localhost:8989/getData",
      // 这里的this会受到ajax影响
      success:res=>{
        res.data.forEach(re => {
          this.data.newsData.push(re)
        })
        this.setData({
          newsData:this.data.newsData
        })
      } 
    })
  },
  1. 新闻列表详细
// news/index.wxml
  <view class="myItem" wx:for="{{newsData}}" wx:key="key" bindtap="skip" data-id="{{item.id}}">
    ...
  </view>

...

// news/index.js
  skip(dataId){
    this.setData({
      myId : dataId.currentTarget.dataset.id
    })
    wx.navigateTo({
      url: `/pages/detail/index?id=${this.data.myId}`
    })
  },

...

// deatil/index.js
  onLoad: function (option) {
    console.log(option.id)
    wx.request({
      url: `http://localhost:8989/getDetail/${option.id}`,
      success:res=>{
        this.setData({
          detailData:res.data
        })
      }
    })
  },	
  • 14
    点赞
  • 76
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值