小程序个人总结

小程序转发分享

在方法里

  1. 首先调用wx.showShareMenu()并且需要设置withShareTickettrue
  2. 当用户将小程序转发到任一群聊后,被别人打开,那么可以在App.onLaunch或者App.onShow获取到一个shareTicket
  3. 通过wx.getShareInfo接口传入shareTicket就可以获取到转发信息。

页面内发起转发

  1. 通过button组件设置属性open-type=“share”,可以在用户点击按钮后触发page.onShareAppMessage事件

在ios里面 new date() 里面跟的参数字符串 需要把-换成/ .replace(/-/g, ‘/’)

获取当前日期的零时 时间戳

new Date(new Date().toLocaleDateString()).getTime();

小程序设置监听器

小程序监听器

在使用小程序的indexOf需要注意

  1. 首先不能在页面直接调用,小程序不支持在页面调用方法,需要使用wxs引入
  2. 定义一个js文件 在里面写方法 最后module 导出
//  扩展支持 indexOf
function indexOf(array, value) {
    return array.indexOf(value)
}

var tools = {
    indexOf: indexOf
}

// 导出
module.exports.tools = tools
  1. 在页面中通过wxs引入<wxs src="../../utils/tool/tool.wxs" module="tools"></wxs>
  2. 最后在使用的地方 tools.tools.indexOf(seleIndexs,'1') !=-1?'selected':''就可以使用了
  3. 最后一定要注意 匹配的数据的类型必须是一致的 类似于 ===

小程序左右滑动事件监听

<view class="main" bindtouchstart='touchStart' bindtouchmove='touchMove' bindtouchend="touchEnd"></view>

    // 触摸开始事件
  touchStart: function(e){
    // console.log(e.touches[0].pageX)
    let sx = e.touches[0].pageX
    let sy = e.touches[0].pageY
    this.data.touchS = [sx,sy]
  },
  // 触摸滑动事件
  touchMove: function(e){
    let sx = e.touches[0].pageX;
    let sy = e.touches[0].pageY;
    this.data.touchE = [sx, sy]
  },
  // 触摸结束事件
  touchEnd: function(e){
    let start = this.data.touchS
    let end = this.data.touchE
    // console.log(start)
    // console.log(end)
    if(end[0] && start[0] < end[0] - 50){
    //   console.log('向右滑,这里可以调用方法,及页面跳转事件')
      this.changeCurrentIndex(e,'reduce')
    }else if(end[0] && start[0] > end[0] + 50){
        // 下一题
    // console.log('向左滑,这里可以调用方法,及页面跳转事件')
        this.changeCurrentIndex(e,'add')
    }
    // else{
    //   console.log('向上或向下滑动')
    // }
    this.data.touchE = [0, 0]
  },
  1. 注意点击的时候只会记录初始位置 结束位置的值为[0,0]所以需要加判断结束位置不为o 这样可以排除点击误触
  2. 如果没有再触发滑动事件那么结束位置的坐标就不会发生改变 这样在触摸结束是 移动距离就不准确

小程序直接操作dom元素

获取和操作dom

长按事件

长按事件详解

小程序使用wxs模拟vue的过滤器

<wxs module="tools" src="../../utils/tools.wxs"></wxs>
var toPassWord = function (data) {
    console.log(data);
}

module.exports = {
    toPassWord: toPassWord
}
<view>{{tools.toPassWord(item.password)}}</view>
注意:
  1. 不能使用es6的新语法特性
  2. 例如:不能使用 const let定义
  3. 不能使用剪头函数
  4. 不能简写对象属性,必须对象属性和变量一起使用
  5. 引入的文件必须是.wxs 文件

小程序成功的回调

this.setData({ page: this.data.page+1 }, () => {
 console.log('赋值成功')
 })

初始化小程序 配置

//在小程序 app.js 中 onLaunch() 声明周期内使用
const that = this;
    // 检测新版本
    const updateManager = wx.getUpdateManager()
    updateManager.onUpdateReady(function () {
      wx.showModal({
        title: '更新提示',
        content: '新版本已经准备好,是否重启应用?',
        success(res) {
          if (res.confirm) {
            // 新的版本已经下载好,调用 applyUpdate 应用新版本并重启
            updateManager.applyUpdate()
          }
        }
      })
    })
    /**
     * 初次加载判断网络情况
     * 无网络状态下根据实际情况进行调整
     */
    wx.getNetworkType({
      success(res) {
        const networkType = res.networkType
        if (networkType === 'none') {
          that.globalData.isConnected = false
          wx.showToast({
            title: '当前无网络',
            icon: 'loading',
            duration: 2000
          })
        }
      }
    });
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值