0

    支付宝小程序开发常见问题汇总大全

    2023.04.28 | admin | 257次围观

    Q:为什么在JS文件中无法使用window、document、jQuery、Zepto?

    A:由于框架并非运行在浏览器中,所以 JavaScript 在 web 中一些能力都无法使用,如 document、window、jQuery、Zepto等。

    Q:样式表支持级联选择器吗?

    A:不支持。建议使用以.开始的类选择器或标签选择器。

    Q:如何修改窗口的背景色

    A:请在acss文件的Page{}根元素中设置。

    Q:为什么 map 组件总是在最上层

    A:map是由客户端创建的原生组件,原生组件的层级是最高的,所以页面中的其他组件无论设置 z-index 为多少,都无法盖在原生组件上。 原生组件暂时还无法放在 scroll-view 上,也无法对原生组件设置 css 动画。

    Q:input下划线不能自定义修改,怎么才能去掉下划线?

    A:您好,小程序开发者工具0.8.4版本已修改input组件,样式全都需要自定义。

    Q:文章中的image,如果想单击后浏览图片,可以放大缩小之类,有没有相关接口?

    A:您好,您可以使用图片预览接口来实现。

    Q:支付宝小程序有拨打电话和发送email的方法吗?

    A:可以拨打电话,暂不支持发送email。API是:my.makePhoneCall。

    Q:iPad好像无法预览小程序?/真机调试小程序是否支持IPAD/ipad是否支持预览小程序?

    A:支持iPad预览,只要能装支付宝客户端的都支持预览。

    Q:我在一台机器上同时开发支付宝小程序和服务器程序,请问支付宝小程序在开发时怎么访问我本机的服务器呢?用localhost还是开发机器的IP地址?

    A:目前服务器必须使用域名,需要在开放平台-开发者中心-我的应用-小程序-小程序详情-开发管理-设置中添加httpRequest域名白名单,不支持本地调试。

    Q:小程序因版本升级重新发布后之前制作的二维码会不会变?

    A:不会改变,之前的二维码还是可以使用。

    Q:支付宝小程序可以一个账号上传多个小程序吗?

    A:一个appid对应一个小程序。

    Q:支付宝小程序现在支持将图片保存到相册吗?

    A:支持保存图片到相册,API是:my.saveImage。

    Q:小程序发布新版本,老用户本地缓存会被清理掉?

    A:不会被清理掉。

    Q:生活号绑定小程序后,小程序能否跳转到生活号其中的一个页面?

    A:暂时不支持。

    Q:模拟鼠标消失

    A:请检查您的显卡,请打开控制面板-鼠标-指针与轨迹,开启鼠标轨迹,就可以显示了。

    Q:小程序是否能支持iFrame嵌套

    A:不支持。

    Q:多名开发者开发一个小程序如何实现代码共享。

    A:请使用svn 或者 git 等代码管理工具。

    Q:小程序与小程序之间可不可跳转?

    A:暂时不支持。

    Q:小程序能否支持启动第三方APP打开文件?

    A:不支持调用第三方app打开文件。

    Q:小程序中image的格式支持哪些?

    A:小程序支持的格式没有特殊限制,因此与web中所支持的一致。

    Q:开发时删错了文件怎么恢复?

    A:暂时不支持恢复。因此请慎重操作删除。

    Q:小程序默认样式都是居中怎么解决?

    A:请使用CSS来解决,推荐通过搜索引擎搜索下答案。

    Q:ES6是否向下兼容?

    A:是向下兼容的。

    Q:小程序新版本发布后,老用户会得到已更新提醒吗?用户需要更新小程序版本吗?

    A:

    情况一:如果老用户正在使用中,或者小程序还在后台运行状态,此时不会提醒更新,也不会更新。

    情况二:若用户还没有进入小程序且也没有后台运行状态,那么用户进入小程序时会同步去更新小程序,保证进入的是最新版的小程序。

    Q:小程序版本如何更新。

    A:重新打包上传新版本,提交审核,审核通过,把已上架的版本改为待上架,把新版本设置为已上架。

    Q:我上传的版本/代码我想下载,请告知还能下载吗?/已上传版本是否可以下载

    A:不支持下载。请妥善保存您本地项目文件。

    Q:小程序可以获得设备MAC地址吗/小程序如何获取设备MAC地址

    A:不可以获取。

    Q:小程序打包上传的包支持多大/小程序包容量多大

    A:最大3M。

    Q:显示不出来细线

    A:在部分机型,如:小屏幕的手机,会出现细线显示不出来的情况,建议把CSS样式上的细线像素改粗点,如:1px改为1.5px。

    Q:样式里的图片是否可以使用外链?

    A:支持外链,但需要加入httpRequst白名单。

    Q:新加了一个开发成员后,无法打开小程序。

    A:真机预览生成好了二维码后,再加开发成员的话,需要在IDE里重新推送,生成新的二维码。

    Q:redirectTo页面跳转后,title没有改变。

    A:需要在onload函数中jquery仿支付宝首页焦点图片切换,设置setTitleBar来设置标题。

    Q:我们从H5页面跳转的小程序的时候,需要带一个参数,这个参数怎么传递?

    A:跳转方法:alipay://platformapi/startApp?appId=xxx&page=x/yz &query=number%3D1,query内的内容按照格式为参数名=参数值;参数名=参数值; 之后encode。

    Q:JS文件import的路径写法

    A:绝对路径写法是/开头,如:/pages/index;相对路径写法是./开头,如:./../pages/index。

    Q:hidden属性只有view有用,别的标签是无效的吗?

    A:是的,一般就用view包起来。

    Q:1rpx画的线条在5S上不展示、手机分辨率越高线条越粗

    A:rpx线条跟手机分辨率有关,建议使用3rpx。

    Q:页面title能不能修改字体颜色,我们现在背景色是白色的,ios上面字体默认也是白色,所以看不到title,请问怎么设置呢?

    A:目前没有修改字体颜色的方法,先通过修改背景色来匹配。

    Q:不用上线就可以测试query的那个功能,是怎么调用的?

    A:IDE右下角Query功能。以key=value的形式设置测试的参数。

    Q:小程序里边可以直接跳转到蚂蚁保险某个产品页面吗?

    A:目前不支持。小程序不支持外跳到其他H5页面,也不支持跳到支付宝端内的某个应用,目前已支持跳支付宝手机客户端应用的有扫一扫。

    Q:scroll-view设定的高度一定要具体的值,不能用百分比吗?

    A:不能百分比,需要使用具体的高度值,建议结合API:my.getSystemInfo获取手机屏幕高度。

    Q:下拉刷新可以设置时间吗?数据出来了它还一直的在转

    A:可以使用停止下拉刷新API:my.stopPullDownRefresh来停止。

    Q:哪里可以看到小程序压缩上传之后的大小?有点担心超出大小限制

    A:在您上传的时候,如果超过大小,编译就会报错。目前最大支持2M。

    Q:navgationback可以传递数据回来吗?比如添加一个信息告诉前个页面 要不要刷新

    A:目前小程序不支持(解决方案:在app全局写个字段告诉前个页面要不要刷新,类似vue里面的那种全局的store)。

    Q:为什么在小程序的功能列表里面找不到转账功能添加?

    A:小程序目前没有提供转账的功能。

    Q:axml里面{{}}这种取值,在里面可以写简单的运算,那方法可以调用吗?比如想对一些值做对应格式化处理或者进行映射

    A:目前不支持。

    Q:在小程序中,是否可以打开支付宝的H5页面?

    A:小程序不支持外跳到其他H5页面,也不支持跳到支付宝端内的某个应用,目前已支持跳支付宝手机客户端应用的有扫一扫。

    Q:怎么能知道我的系统是安卓,还是ios呢,通过navigator.userAgent?

    A:使用my.getSystemInfo返回的model来判断。

    Q:可以关闭右上角的分享,单独由界面其它按钮触发分享么?

    A:目前小程序的分享功能仅支持在page({onShareAppMessage(){},})中使用,暂不支持单独的按钮来触发。

    Q:分享return的属性path,是不是就是用户点击分享之后会跳转的页面?

    A:是的,是用户点您分享出去后的跳转的页面

    Q:右上角的分享按钮是一直都有,还是定义了onShareAppMessage方法才会有?

    A:是的,还需要return 一个 Object,用于自定义分享内容。具体请查看文档。

    Q:checkbox的checked设了false之后,还是勾选状态

    A:请检查是否按照checked={{false}}方式写的,如果不加括号会识别成字符串。

    Q:小程序的headers里面可以加自己定义的参数吗

    A:可以, 修改了headers后会先发一个OPTIONS嗅探,服务端要做兼容。但推荐还是把自定义参数放在请求参数data中。

    Q:load --->& ready --->&show生命周期是这么走的对么?

    A:是的。

    Q:支付宝小程序有没有获取用户唯一标示的接口?

    A:支持

    Q:图片使用 aspectFit 模式时不是水平和垂直居中(设置 image 元素宽高各 100px,但是图片本身是宽100、长50,这时候图片会靠在 image 元素顶部显示/垂直方向不是居中显示/水平方向也一样)

    A:您检查下属性mode="aspectFit "写的时候会不会多了空格之类的。

    Q:label 元素不会触发绑定的 onTap 事件?

    A:label没有ontap事件。

    Q:设置域名白名单的域名能写成IP地址吗?

    A:不支持。

    Q:小程序是否只支持支付宝原生支付接口?

    A:不支持。支付需要服务器端配合完成。

    Q:是否支持引入Ping++这类支付接口?

    A:不支持

    Q:地图有周边功能的相关接口吗?

    A:不支持该功能;建议后端用百度或者高德地图获取到信息,然后传到小程序实现。

    Q:设置tabBar的时候有什么需要注意吗?

    A:设置tabBar时必须包含首页index;路径地址需要正确无误。

    Q: 小程序可以生成带参的二维码吗?

    A:小程序支持两种带参二维码。 一种是小程序专用二维码—— 小程序码,这种码在支付宝开放平台开发者中心的码管理中,最多可以设置19个带参数的。若想要设置更多数量的动态二维码则需要用到alipay.open.app.qrcode.create小程序生成推广二维码接口。 第二种是普通二维码—— 关联普通二维码,这种码可以在支付宝开放平台开发者中心的码管理的关联普通二维码设置中,进行规则匹配设置。设置好以后,商户自定义的一个H5链接生成的二维码,在支付宝手机客户端扫码的情况下,就会自动跳转至支付宝小程序。

    Q:请问我可以在axml中用app.js中定义的变量吗?

    A:getApp()在需要引用页面的js中获取,用js转换后运用到axml中。

    Q:有没有关闭所以页面打开新页面函数?

    A:在非tabbar的情况下,目前不支持该功能。如果是在tabbar的情况下,则请使用my.switchTab

    Q:小程序能实现查看pdf文件吗?

    A:目前暂时不支持PDF文件的查看。

    Q:小程序里面有类似js里面的setTimeout 的功能吗?

    A: 小程序支持setTimeout 。

    Q:小程序的canvas支持流行绘图库吗?

    A:目前支付宝小程序canvas兼容html5的canvas,但是如果需要引入绘图库,需要自行适配。

    Q:支付宝小程序的名字是否允许重复命名?

    A:不可以。

    Q:小程序能否载入游戏?

    A:不能

    Q:支付宝小程序是否有必需打开GPS定位才能连接蓝牙的限制?

    A:android6.0以上是有这个限制的,必须有定位权限才能连蓝牙。

    Q:请问我们在Map组件中加了callout属性,真机一直闪退,是为什么呢

    A:这样写callout:{content: ‘xxxx’},真机的时候点击markers才显示。

    Q:预览图片api my.previewImage,在调试的过程中发现预览不了手机本地的图片。

    A:可以通过my.chooseImage选择之后让my.previewImage预览。

    Q:现在审核通过了,但是就只有一个灰度测试和退回开发按钮,没有上线按钮?

    A:审核通过后,需要先到灰度阶段,再上架。灰度测试可以选择人群选择比例,比例达到100%之后完成上线,能减小或避免全量上线的风险。

    Q:上架之后不能再修改灰度比例了吗?

    A:灰度期间可以修改比例,当灰度100%,也就是完全上架的意思,因此上架后不能回滚到灰度版本。。

    Q:扫码功能可以同时支持条码和二维码吗?

    A:支持,但建议不要混合扫,因为扫码框不符。

    Q:acss支持属性选择器吗?

    A:不支持。

    Q:官方小程序Demo有没有源码,开始学习支付宝小程序的可以以此小程序练习?

    A:请打开IDE 点击”新建”,新建一个“组件/API DEMO”这就是提供的官方小程序Demo。

    Q:问一下支付宝小程序有没有获取用户唯一标示的接口?

    A:可以使用小程序的用户信息授权api,my.getAuthCode

    Q:scroll-view 是否支持animation动画?

    A:scroll-view 不支持animation动画。

    Q:onShareAppMessage是右上角菜单中的分享按钮,那右上角的关于按钮的事件是什么?

    A:目前没有提供。

    Q:radio标签组件如果更改大小的话就会走样 。

    A:不支持更改。

    Q:接入第三方地图API,使用js方式么? 如何接入呢?

    A:不支持第三方接入。

    Q:父标签加上vertical-align: middle样式和 line-height:父元素高度,子元素图片没有和单行文字对齐

    A:图片和文字对齐要在图片上面设置vertical-align: middle。

    Q:有长按的事件触发吗?axml里 onTap可以触发单击事件,有长按事件触发的接口么?

    A:view的onLongTap来实现长按事件,button的hover-start-time属性来实现。

    Q:小程序能支持扫描一维码或二维码吗?

    A:支持的

    Q:怎么获取系统当前日期时间呢?

    A:使用new Date()就可以获取到当前时间。但需要注意时间类型,避免类型混乱导致页面异常。

    Q:小程序怎么设置tabBar页面?

    A:在app.json 里设置tabBar属性配置

    Q:小程序只能在app.json设置tabBar吗?单个页面json里面目前无效吗?

    A:是的,所有的页面跳转设置tabBar都在app.json里配置。

    Q:不要修改page.data

    A:如果直接修改 page.data,例如 Page({ data: { arr:[] }, doIt() { this.data.arr.push(1); this.setData({arr: this.data.arr}); } }); 由于 data 为对象时为所有页面共享,因此如果该页面 back 后再次进入则显示为上一次的数据 可以使用不可变数据或者变更 data 为页面独有 不可变数据 Page({ data: { arr:[] }, doIt() { this.setData({arr: [...this.data.arr, 1]}); }, }); 页面独有数据(不推荐) Page({ data() { return { arr:[] }; }, doIt() { this.data.arr.push(1); this.setData({arr: this.data.arr}); } });

    Q:小程序是否支持在线留言?

    A:支持的,可以使用云客服组件实现客服与用户的交流。

    Q:怎么样上传小程序模板

    A:在IDE中添加模板ID,开发完成后进行上传,与上传小程序的操作一致。

    Q:小程序image组件是否支持svg格式的图片?

    A:暂不支持。

    Q:picker组件支持多列数据选择吗?

    A:多列数据可以用picker-view实现。

    Q:能不能通过js来控制是否能够进行下拉刷新操作?

    A:无法直接控制,可以通过my.stopPullDownRefresh来停止。

    Q:IDE中无法模拟订单支付,控制台没有报错,是IDE工具测不了支付吗?

    A:IDE中不能进行支付的测试,只能使用真机进行支付的调试。

    Q:模板消息formId不合法

    A:1、请确认formId的合法性,如果确认是formId是真实合法的(formId的来源可以有两个,一个是通过小程序form表单页获得,另一种是用户发生付款的交易号),请稍后再次发起请求。(注意,支付类的模板消息只允许只用tradeNo进行发送,表单类的模板消息只允许使用表单组件生成的formId进行发送) 2、formId需要和被触达的用户匹配,如果formId是通过小程序表单生成的,则只允许发送给触发表单的用户,如果formId是交易号,则只允许发送给付款人员。

    Q:支持支付宝小程序的最低app版本是多少呢?

    A:支付宝钱包版本10.1.0。建议更新到最新支付宝手机客户端版本,以保证小程序组件的正常使用。

    Q:小程序的axml中是否可以写普通的html代码,还是只能用文档提供的组件标签?

    A:不能使用html的代码来写,请按照小程序的框架规范来编写代码。

    Q:怎么清除手机支付宝上,已经加载过的小程序缓存数据?

    A:使用API my.removeStorage进行清除小程序数据的缓存。

    Q:小程序应用还在开发中,可以正式环境调用支付接口吗?

    A:可以的,只需要支付接口已签约并且添加功能后,就可以正常使用,需要使用真机进行测试。

    Q:支付宝小程序textarea如何清空数据?

    A:可以使用setData重新对这个组件进行赋值

    Q:小程序在后台是否可以删除创建的模版?

    A:目前没有删除按钮

    Q:当有多层数组的时候,a:for还能进行处理吗?

    A:可以的。

    Q:/pages/index/index?data=? 后面的data有没有数据大小限制

    A:没有限制,鉴于数据传输、安全风险等因素,建议不要太大。

    Q:this.setData的应用场景是什么,提前声明好参数名,然后赋值吗,这个是不是也受异步影响

    A:this.setData是更新修改data数据的,不是异步。

    Q:小程序的网络的最大响应时间,最大是多少?

    A:30秒。

    Q:小程序的缓存 my.setStorage 时间是多久

    A:目前是没有限制缓存时间的。因为缓存是存储到支付宝客户端缓存里,只有清除客户端缓存的时候才会失效。

    Q:支付宝小程序数据分析-事件管理中,在事件上报配置选择api时,为什么无法同步数据

    A:请检查:

    小程序至少上架过一次;

    两个参数变量信息是否填写正确,事件设置时【data】填写项里左边填写框指的是数据展示用名称,右边填写框指的是小程序代码里的变量

    动作的选择是否正确,只有【API】的选择代表my.reportAnalytics接口埋点。

    Q:想改变默认的user-agent中值,但是发现改变不了,如何改变呢

    A:如果存在user-agent的值的情况下,是不能修改的,只能获取。如果不存在jquery仿支付宝首页焦点图片切换,可以自行设置。

    Q:如何获取小程序模板消息的app_auth_code

    A:发送模板消息的话不需要app_auth_code的。如果是ISV商户在模板中调用发送模板消息的接口需要把模板授权给第三方应用,然后在第三方应用的授权管理中找到对应的授权token,ISV服务端在调用接口的时候在请求中添加上app_auth_token这个参数。

    Q:点击底部tab报错[WORKER] page 'undefined' not found

    A:请检查:

    页面地址没有在app.json中的pages中添加,如果添加了,重新起到IDE。

    地址填写错误,检查地址是否正确。

    Q:小程序支持async/await吗

    A:支持的,接口需要自行promise化,但是建议不要用到注册函数上,避免影响到生命周期。

    Q:my.addCardAuth(OBJECT)报系统异常,请联系商家ERROR010

    A:小程序在服务端中调用投放链接接口时,把callback这个参数必须去掉的。

    Q:第三方创建模板后面没有加模板两个字,怎么多出来这2个字了?

    A:模版两个字是自动添加的。

    Q:小程序APP支付支持沙箱测试吗?

    A:支持的。请按照APP支付沙箱文档来开发测试。

    Q:小程序IDE支持32位的吗?

    A:目前不支持32位的。

    Q:小程序里信用借还如何接入使用?

    A:接入可参考小程序信用借还文档。

    Q:处理后台业务逻辑API,官方是否有这方面的SDK,就像wafer框架一样?

    A:支持的。请结合服务端SDK与云服务。

    Q:基础库版本,是客户端自动会更新吗?

    A:ide最新基础库,需要下载最新的版本ide工具,在支付宝客户端的小程序基础库是自动更新的。

    Q:小程序没有审核通过可以调用关注生活号组件实现关注生活号功能吗?

    A:需要小程序至少上架过一次才可以使用。

    Q:小程序使用当面付和app支付有什么区别?

    A:当面付和APP支付在小程序内的支付流程与体验基本一致,当面付支持核销口碑券及口碑商户优惠,已签约当面付或在口碑开店的商户建议接入当面付,当面付在小程序内不能通过扫码、条码、声波付等方式支付,只能唤起收银台进行支付。

    Q:小程序的应用user_id 和支付宝的全局alipay_user_id是怎么换算的

    A:alipay_user_id这个字段目前已经废弃了,建议使用该接口,转出user_id,详细见文档。

    Q:三方小程序使用哪一种支付方式

    A:三方目前仅支持 当面付的方式来进行支付操作。

    Q:已经给商户提供了服务并完成,但是状态一直处于实施待确认,如何完结?

    A:调用alipay.open.servicemarket.order.item.confirm(服务商代商家确认实施完成)来确认。

    Q:平台上配置了应用信息了,但是体验版里没有展示

    A:体验版不显示应用信息,上线后才会显示。

    Q:灰度测试的相关说明,灰度的范围我可以自己选择吗?

    A:审核通过后,需要点击灰度→上架,之后小程序才会正式上线。其中,灰度阶段,可以选择支付宝用户灰度范围10%/30%/50%(该规则是所有支付宝用户进行随机)三个档次,比例只能提高不能降低,灰度测试说明详情可参考文档第四步。

    版权声明

    本文仅代表作者观点。
    本文系作者授权发表,未经许可,不得转载。

    发表评论