codecamp

6. wepy 针对原生API进行优化

对现在API进行promise处理,同时修复一些现有API的缺陷,比如:wx.request并发问题等。原有代码:

onLoad = function () {
    var self = this;
    wx.login({
        success: function (data) {
            wx.getUserInfo({
                success: function (userinfo) {
                    self.setData({userInfo: userinfo});
                }
            });
        }
    });
}

基于wepy实现代码:

async onLoad() {
    await wx.login();
    this.userInfo = await wx.getUserInfo();
}

在同时并发10个request请求测试时:不使用wepy:

0b3834f5f40ea030a6d405584760b638

0a4d3388200d19434629ea8c74b7d35d

使用wepy后:

381276fef2fb5cce1cac6a41edb6fdc2


5. wepy 默认使用babel编译,支持ES6/7的一些新特性
wepy .wepyrc 配置文件说明
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }