微信小程序版博客2018.12.02成功发布

定时器setTimeout

下面段代码是为了2s后改变spinShow值,原先为True,2s后改变为False

Page({

    /**
     * 页面的初始数据
     */
    data: {
        spinShow: true
    },

    /**
     * 生命周期函数--监听页面加载
     */
    onLoad: function (options) {
        
        var that = this//不要漏了这句,很重要
        setTimeout(function () {
            that.setData({
                spinShow: !that.data.spinShow,
            });
            // console.log("spinShow");
        }.bind(that), 2000)

    },

})

注意事项

setData()
this.data.text="xxxxx"  //这是错误的,
this.setData ({ //在这里面修改数据的值,和react的setdata有些类似})  //这是正确的
这里记住this有作用域的问题 ,如在局部函数中使用需.bind(this),或其他

getApp()
如果需要全局的数据可以在app.js中设置。如:

App({// app.js
  globalData: 1
})
// 某page.js
console.log(getApp().globalData)

导航标签Navigator(页面链接)

微信官方文档栗子

<view class="btn-area">
  <navigator url="/page/navigate/navigate?title=navigate" hover-class="navigator-hover">跳转到新页面</navigator>
  <navigator url="../../redirect/redirect/redirect?title=redirect" open-type="redirect" hover-class="other-navigator-hover">在当前页打开</navigator>
  <navigator url="/page/index/index" open-type="switchTab" hover-class="other-navigator-hover">切换 Tab</navigator>
  <navigator target="miniProgram" open-type="navigate" app-id="" path="" extra-data="" version="release">打开绑定的小程序</navigator>
</view>

总结

navigator相当于a标签

<navigator url="../index/index">点击跳转不关闭当前页面</navigator>
<navigator url="../logs/logs" redirect="true" >点击跳转关闭当前页面</navigator>