个人案例
getdata 的返回值就是 Promise,then 中返回是没有用的(只是在 Promise 执行完成时调用一下,返回值没有意义),只能在 then 回调中使用结果 要变成同步的写法只能用 async await async function(){ var value = await getdata(); }
如何正确获得Promise方式后then返回值是值的本身而不是一个Promise对象?我通过Promise方式把一个wx.request()的异步API封装好,示例代码大概如下: getdata:function(){ return new Pormise(res,rej){ wx.request({ .... success:function(e){res(e.data)}, // e的值为一个对象{msgcode:1,data:1} fail:function(error){rej("获取失败!")} }); }; }; 调用: var value=getdata().then(function(e){ console.log(e); // 打印结果显示:1 return e; // 返回给变量value=Promise对象(情况如下图,isLike就是返回的Promise对象) [图片] },function(error){}); 请问为何我在上述的return e中获取不到跟打印console(e)同样的值?是哪里出错了?先感谢帮忙!
2020-02-24我试过,印象中puppeteer的大小超过了云函数包大小限制,用不了
云函数怎么使用puppeteer?请问各位大神,小弟想在云函数上做个爬虫,但是运行时显示报“Browser is not downloaded. Run "npm install" or "yarn install"” 错误,目前云函数怎么使用Puppeteer?
2020-02-24日期格式化的函数在默认模板里就有 const formatTime = date => { const year = date.getFullYear() const month = date.getMonth() + 1 const day = date.getDate() const hour = date.getHours() const minute = date.getMinutes() const second = date.getSeconds() return [year, month, day].map(formatNumber).join('/') + ' ' + [hour, minute, second].map(formatNumber).join(':') } const formatNumber = n => { n = n.toString() return n[1] ? n : '0' + n } module.exports = { formatTime: formatTime }
有没有工具包?提供字符串或对象是否为空,和日期格式化等方法的工具包?有没有工具包?提供字符串或对象是否为空,和日期格式化等方法的工具包?
2020-02-23这是 wxs 的比较方法,这是 wxs 文件?
文档上说通过constructor比较对象,但实际执行的结果却不能对比?[图片] [图片] 断点调试却没有经过23行。
2020-02-22[图片] 在 attached 周期中获取
this.data的中的数据获取不到?properties: { colors: { type: Object, value: {} // {black: xxxxx.png,red:xxx.jpg} }, counts: { type:Object, value:{} // {black: {m: 99, s: 88, xxl: 55},red: {m: 99, s: 88, xxl: 55},white: {m: 99, s: 88, xxl: 55}} } }, lifetimes:{ created:function(){ console.log('this.data:',this.data);//可以正常打印数据 console.log('this.data.colors:',this.data.colors);//打印是个{}对象 console.log(Object.keys(this.data)); }, }, [图片] 头一回遇到这种情况,不知道哪里出了问题
2020-02-22console.log 打印 object 或 array 的时候,展开的时候会重新读一次值,如果在打印之后这个值被修改了,就会出现打印时和展开时的值不一样的情况 这里应该就是打印的时候 this.data.list[this.data.active] 的值是 {id:0,name:"标签0"} 没有 offsetLeft 属性,这个属性是这之后被添加的吧,所以展开的时候会有
console.log打印为空。数组明明有该数据?[图片]
2020-02-18function wxLogin(){ return new Promise(function(reslove,reject){ wx.login({ success (res) { reslove(res.code); } }) }) } var code = await wxLogin(); var info = await this.login(code);
如何用async、await将wx.login封装成同步执行的?如题,进行的项目需要登录进入第一个页面之前就需要使用该用户的信息来展示各种数据,但是wx.login是异步的,下面的获取openid和session_id我已经改成了await请求了,但是,这个wx.login就不知道怎么去改了,在这里先附上我获取openid的函数和调用方法,希望大神帮忙解答,谢谢 //这是封装的方法 login:async function(code){ let res = await request({url:'https://www.ceshi.com/ceshi/ceshi/login',data:{code},method:'post'}) return res } 下面是在onlaunch中使用 let info = await this.login(code) console.log(info) console.log('aaa') //这样请求的话,就会先输出info的内容,再出书aaa字符串了,但是wx.login()要怎么封装才行啊,抓狂!!!!
2020-02-18我试过,印象中 puppeteer 的大小超过了云函数包的大小限制
云函数端如何调用puppeteer?个人小程序不支持用web view标签加载自己公众号的文章,于是想用调用puppeteer爬取推文中的相关内容,紧接着交给towxml 解析渲染。请问小程序如何使用puppeteer爬取微信推文数据?
2020-02-18自定义组件内只能使用 class 选择器 [图片]
自定义组件中通过标签名选择器设置了样式,会影响到页面上的组件,而且优先级比页面中的样式优先级更高?在自定义组件中为view等组件指定box-sizing为border-box, 页面中view的box-sizing则是默认的content-box,如果页面引用了这个自定义组件,则页面中所有view的box-sizing都会受自定义组件的影响变成border-box. -- 并没有启用样式共享。 文档中在介绍组件样式隔离是说app.wxss或页面的wxss会影响自定义组件,但现在结果上看是相反的,即自定义组件会影响引用它的页面,这应该是个bug吧? [图片]
2020-02-18点开时候是全的应该是因为异步的问题,即打印的时候那几项是空的,后面被修改了,展开的时候会重新读一次值
我打印了一个数组,显示empty什么意思?我打印了一个数组,显示empty什么意思,但实际点开每一组数据都是全的,这个empty在这什么意思 [图片]
2020-01-20