支付宝服务提报中小程序端如何获取formId,记录一下!

铺垫一下场景,目前在职公司是支付宝的服务商,然后我们的模板小程序里面有一个功能叫做服务提报,然后后端调用支付宝接口需要formId,这个formId是前端传过去的;然后后端的哪位大哥就问我可能获取到这个formId,然后诚然我也不知道,我说我试一下,然后我俩一起探讨了半天,得到的最终答案!

Xnip2021-11-11_10-19-19.jpg

相关链接

获取formId代码结构

需要注意的点

Xnip2021-11-11_10-26-07.jpg

代码分享

uniapp 版本

<template>
    <view class="example">
        <form action="" report-submit @submit="submit">
            <button type="primary" size="mini" formType="submit">获取表单中的formId</button>
        </form>
    </view>
</template>

<script>
export default {
    onShow() {
        console.log("是否可用 report-submit ?", uni.canIUse("form.report-submit"));
    },
    methods: {
        submit(e) {
            console.log("表单提交返回值:", e.detail);
            uni.showModal({
                content: JSON.stringify(e.detail.formId),
                showCancel: false,
            });
        },
    },
};
</script>

<style lang="scss" scoped>
</style>

原生支付宝小程序版本

axml部分

<view>
  <form report-submit onSubmit="onSubmit">
      <button size="default" type="primary" form-type="submit">获取表单中的formId</button>
  </form>
</view>

js 部分

Page({
  onShow(){
    console.log("是否可用 report-submit ?", my.canIUse("form.report-submit"));
  },
  onSubmit(e){
    console.log("表单提交返回值:", e.detail);
    my.alert({
        content: JSON.stringify(e.detail.formId),
        showCancel: false,
    });
  }
});