微信小程序开发之知识碎片的拾取

开发微信小程序也有一段时间了,从小白到现在不那么白,这期间也一直在学习相关的知识,在此记录一下所用到的知识点。

没有先后顺序,想到哪写到哪。

关于小程序全局变量和缓存中的变量

生命周期:全局变量每次关闭小程序重新打开的时候都会更新,缓存的更新需要调用wx.setStorage()方法重新赋值。

全局变量

全局变量顾名思义就是整个小程序所有页面都能用,但是需要在app.js中进行如下设置

//app.js
App({
    globalData: {
        name: '张三',
        age: 10
    }
})

如果在app.js中获取globalData,用this就可以了

如果在其他页面操作globalData使用如下方法:

//index.js
var app = getApp();
Page({
    onLoad: function() {
    //获取
    this.name=app.globalData.name;
    this.age=app.globalData.age;
    //重置
        app.globalData.name = "小红";
     app.globalData.age= 20;
    }
})

缓存

缓存也是所有页面都可以使用,但是用之前需要存储数据。

//存数据
wx.setStorage("name",this.data.name);
//取数据
wx.getStorage("name");

当 setStorage 之后可以去到开发者工具里面查看 这是没有保存值的情况

javaScript函数

(x,y)=>x*y
等价于
function(x,y){
	return x*y;
	}
	
javaScript中高阶函数,map/reduce

map能处理一个参数的数组,

arr.map((x)=>x*x);

reduce能处理两个参数的数组;

arr.reduce((x,y)=>x*y);

slice() 方法可从已有的数组中返回选定的元素
arrayObject.slice(start,end)
start位必填,如果只有start则从start开始知道数组最后一位

小程序switchTab 跳转不刷新页面解决办法:
把switchTab 换成reLaunch

wx.reLaunch({
    url: '../index/index',
})

微信小程序页面延时跳转

 	wx.showToast({
            title: '取消成功!',
            icon: 'succes',
            duration: 2000,
            mask: true
          })
          setTimeout(function(){
            wx.switchTab({
              url: '../index/index',
            })
          },2000)

.json文件不能加注释,会报错
shift+alt+F 小程序格式化代码快捷键

你可能感兴趣的:(微信)