- 怎样在小程序里上传gif图片
前一段时间我们想增加"动图专区"的板块,可是手机上wx.chooseImage会把gif转成jpg,想了一个"曲线救国"的办法: 通过web-view内嵌h5上传gif,再把gif地址通过wx.miniProgram.redirectTo带参跳回发布页面。 图一,发布页面点添加动图,会跳转到上传页面 [图片] 图二,web-view内嵌h5上传图片地址 [代码]<[代码][代码]web-view[代码] [代码]src[代码][代码]=[代码][代码]"{{h5上传图片页面}}"[代码][代码]>[代码]web-view[代码][代码]>[代码][代码] [代码] [代码] [图片] h5上传后带url回跳 [代码][代码]"file"[代码] [代码]accept=[代码][代码]"image/gif"[代码] [代码]type=[代码][代码]"file"[代码] [代码]/>[代码][代码][代码][代码]----[代码][代码][代码][代码]wx.miniProgram.redirectTo({[代码][代码][代码][代码] url: `${[代码][代码]/photos/photos?GifUrl}=[代码][代码]res.key`[代码][代码][代码][代码]})[代码][代码] 图三,发布页面拿到上传后的gif地址,并展示 [代码]onLoad: [代码][代码]function[代码] [代码](e) {[代码][代码] if[代码][代码](e.GifUrl) [代码][代码][代码]upload_img = e.GifUrl[代码]}[代码] [图片] 线上效果: [图片]
2018-08-17 - 小程序form表单获取不到formId
我的form表单是这样写的 [代码]<form bindsubmit=[代码][代码]"submitInfo"[代码] [代码]report-submit=[代码][代码]'true'[代码] [代码]>[代码][代码] [代码][代码]<button class=[代码][代码]'start_button'[代码] [代码]bindtap=[代码][代码]'start'[代码] [代码]form-type=[代码][代码]"submit"[代码][代码]>立即开始</button>[代码][代码]</form>[代码] [代码]//formId传给服务端[代码][代码] [代码][代码]submitInfo: [代码][代码]function[代码][代码](e){[代码][代码] [代码][代码]console.log([代码][代码]"formId"[代码][代码],e.detail.formId);[代码] [代码] }[代码] 我的问题是,这个formId有的时候能获取到,有的时候会报一个错误(手机端测试) IOS报错: [代码]OnWebviewEvent: submitInfo, WebviewId: 43 not found[代码] 安卓报错: [代码]OnWebviewEvent: submitInfo,WebviewId: 105905897 not found[代码] 就获取不到formId了 有的时候在开发版上不打开调试也获取不到formId 时好时坏,摸不着规律。求解! ------------------------------------------- 结贴 -------------------------------------------------- 问题已解决: 我的bindtap="start"里绑定了页面跳转的逻辑,而且是redirectTo跳转,跳转后页面被销毁。 所以在某些情况下,formId还没有获取到的时候,页面已经跳转并销毁了。这样就会出现上面的报错。 解决办法: 把start的逻辑放到submitInfo里,当formId传递到服务器后,再执行页面跳转。
2018-08-29