2024年Web前端最新vuex项目中的微信支付、支付宝支付(1),2024年最新腾讯三面到hr面

最后

资料过多,篇幅有限

开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】

自古成功在尝试。不尝试永远都不会成功。勇敢的尝试是成功的一半。

Toast({

message: res.data.msg,

position: ‘middle’,

duration: 1000

});

}

});

} else if(this.wechatpayType == ‘wxpay_php’){

// console.log(“微信外支付”)

let data={

amount:this.number,

}

this.$http.outsideWeChatPay(data).then( res => {

if(res.data.code === 200){

let url=res.data.data

window.location.replace(url) //这里是后端返回的URL直接进行跳转即可完成微信外支付

}else{

Toast({

message: res.data.msg,

position: ‘middle’,

duration: 1000

});

}

});

}

},

4.在调起支付的页面监听从其他页面返回的事件,进行一些刷新业务逻辑的实现即可,至此微信外支付已经完成。

document.addEventListener(“visibilitychange”, function() {

//需要的操作

});

5.【微信内支付】微信内支付比起微信外支付稍微复杂一点,但是也不难,(3步骤代码里面已经请求支付方式接口拿到了微信内支付所需要的参数)根据官方API

微信内置js对象 WeixinJSBridge,进行开发,至此微信浏览器内支付已经完成

//解决微信内置对象报错

weixinPay(data){

var vm= this;

if (typeof WeixinJSBridge == “undefined”){

if( document.addEventListener ){

document.addEventListener(‘WeixinJSBridgeReady’, vm.onBridgeReady(data), false);

}else if (document.attachEvent){

document.attachEvent(‘WeixinJSBridgeReady’, vm.onBridgeReady(data));

document.attachEvent(‘onWeixinJSBridgeReady’,vm.onBridgeReady(data));

}

}else{

vm.onBridgeReady();

}

},

//微信内置浏览器类,weChatParameter对象中的参数是3.步骤代码中从后端获取的数据

onBridgeReady(){

var vm = this;

var timestamp=Math.round(vm.weChatParameter.timeStamp).toString();

WeixinJSBridge.invoke(

‘getBrandWCPayRequest’,{

debug:true,

“appId”:vm.weChatParameter.appId, //公众号名称,由商户传入

“timeStamp”:timestamp, //时间戳,自1970年以来的秒数

“nonceStr”:vm.weChatParameter.nonceStr, //随机串

“package”:vm.weChatParameter.package,

“signType”:vm.weChatParameter.signType, //微信签名方式:

“paySign”:vm.weChatParameter.paySign, //微信签名

jsApiList: [

‘chooseWXPay’

]

},

function(res){

// 使用以上方式判断前端返回,微信团队郑重提示:res.err_msg将在用户支付成功后返回ok,但并不保证它绝对可靠。

if(res.err_msg == “get_brand_wcpay_request:ok” ){

Toast({

message: ‘支付成功’,

position: ‘middle’,

duration: 3000

});

vm.number=null

vm.$router.go(-1)

//window.location.href = vm.BASE_URL + ‘index.html#/depositResult’

}else{

Toast({

message: ‘支付失败’,

position: ‘middle’,

duration: 3000

});

}

}

);

},

6.微信内部浏览器支付也可以封装一下,在全局都可以直接调用:

//微信浏览器支付

function wxpay(params,callback){

if (typeof WeixinJSBridge == “undefined”){

if( document.addEventListener ){

document.addEventListener(‘WeixinJSBridgeReady’, onBridgeReady(params,callback), false);

}else if (document.attachEvent){

document.attachEvent(‘WeixinJSBridgeReady’, onBridgeReady(params,callback));

document.attachEvent(‘onWeixinJSBridgeReady’, onBridgeReady(params,callback));

}

}else{

onBridgeReady(params,callback);

}

}

function onBridgeReady(params,callback){

var that = this

WeixinJSBridge.invoke(

‘getBrandWCPayRequest’, {

“appId”:params.appId,

“timeStamp”:params.timeStamp,

“nonceStr”:params.nonceStr,

“package”:params.package,

“signType”:params.signType,

“paySign”:params.paySign

},

function(res){

callback(res)

}

);

}

7.组件中调用微信支付:

this.commonUtils.wxpay(res.data.data,function(payResult){

if(payResult.err_msg == “get_brand_wcpay_request:ok” ){

//执行

}

})

二、移动端支付宝支付,vue中如何玩?

其实支付宝支付也有H5支付和支付宝浏览器支付,这里只做H5支付,因为已经满足了业务需求。

1.支付宝中的H5支付和PC端的一样,主要是后端的工作量,后端完成订单的生成之后返给前端的是form表单,前端只需要负责做页面的跳转即可:

前端框架

前端框架太多了,真的学不动了,别慌,其实对于前端的三大马车,Angular、React、Vue 只要把其中一种框架学明白,底层原理实现,其他两个学起来不会很吃力,这也取决于你以后就职的公司要求你会哪一个框架了,当然,会的越多越好,但是往往每个人的时间是有限的,对于自学的学生,或者即将面试找工作的人,当然要选择一门框架深挖原理。

以 Vue 为例,我整理了如下的面试题。

Vue部分截图

如果你觉得对你有帮助,可以戳这里获取:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】

决于你以后就职的公司要求你会哪一个框架了,当然,会的越多越好,但是往往每个人的时间是有限的,对于自学的学生,或者即将面试找工作的人,当然要选择一门框架深挖原理。

以 Vue 为例,我整理了如下的面试题。

Vue部分截图

如果你觉得对你有帮助,可以戳这里获取:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】

  • 9
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值