美文网首页
小程序组件的生命周期、用法

小程序组件的生命周期、用法

作者: 郭_小青 | 来源:发表于2021-04-27 18:17 被阅读0次

page.js

Page({
  data: { // 页面初始化数据
    num: 1
  },
  onLoad:function(options){
     // 生命周期函数,监听页面加载
  },
  onReady:function(){ 
    // 监听页面初次渲染完成
  },
  onShow:function(){
    // 监听页面显示
  },
  onHide:function(){
    //监听页面隐藏
  },
  onUnload:function(){
    //监听页面卸载
  },
  onPullDownRefresh:function(){
    //监听用户下拉动作
  },
  onReachBottom:function(){
    //页面上拉触底事件的处理函数
  },
  onShareAppMessage:function(){
    //用户点击右上角分享
  }, 
  onPageScroll:function(){
    //页面滚动时执行
  }, 
  onTabItemTap(item) {
    // tab 点击时执行
    console.log(item.index)
    console.log(item.pagePath)
    console.log(item.text)
  },
    // 事件响应函数
  viewTap: function() {
    this.setData({
      text: 'Set some data for updating view.'
    }, function() {
      // this is setData callback
    })
  },
  // 自由数据
  customData: {
    hi: 'MINA'
  }
})

一:components/adDialog.js

Component({
  properties: { / 组件属性列表
    isStringVal: {
      type: String,
      value: '是'
    },
    isBooleanVal: {
      type: Boolean,
      default: false,
      observer: function(newVal, oldVal){
      },
    }
  },
  observers:{    /观察者,属性监听(properties与data中数据均可监听)
   'num'(data){  //单个监听
       console.log('数量改变了')
    },
    'num,key'(num, key){ // 多个监听
      this.setData({
          newKey:  num+ key
      })
    }
  },
  data:{  / 组件内部的初始化数据
    num: 1,
    key: 'test',
    newKey: test1
  },

  created: function(){
    / 组件实例刚刚被创建好时触发
    // 组件的this.data 就是在Component构造器中定义的数据data
    // 用于给组件this增加一些属性
    // 不可以调用setData
  },

  attached: function(){
    / 在组件完全初始化完毕、进入页面节点树后触发
    // this.data 被初始化为组件的当前值
    // 绝大多数初始化工作可在这个时机进行
    // 可以使用setData
  },

  detached: function(){
     /在组件离开页面节点树  后   触发
    // 退出一个页面时。 如果组件还在页面节点树中,则会触发
  },

  methods:{ / 组件的方法列表
    isOK: function(){
        console.log('完美')
    }
  }
})

二:components/adDialog.wxml

<block>
  <view>页面呈现的HTML内容</view>
</block>

三:components/adDialog.json

{
  "navigationBarTitleText": '导航条名称',
  "navigationStyle": 'default', // default是默认样式, custom自定义导航栏
  "component": true, 
  "usingComponents": { // 组件引用
      "showAdPop": "/components/adDialog", // 举例子  引自己
  } 
}

四:components/adDialog.wxss

  .styleVal{
    样式
  }

组件使用

<showAdPop isBooleanVal ="{{isBooleanVal}}" isStringVal ="否" ></showAdPop>

相关文章

网友评论

      本文标题:小程序组件的生命周期、用法

      本文链接:https://www.haomeiwen.com/subject/qilprltx.html