• 最新文章

程序开发 Vue History模式下微信支付授权目录的填写,处理URL未注册

调起微信sdk支付时弹出url未注册问题, 微信开发者平台配置url: 访问url:http://www.baidu.com/pay/ment 支付授权目录:http://www.baidu.com/pay/ 访问url:http://www.baidu.com/pay 支付授权目录:http://www.baidu.com/ 访问url:http://www.baidu.com/pay/ment?id=123 支付授权目录:http://www.baidu.com/pay/ 文章来自:vue history模式下的微信支付,及微信支付授权目录的填写,处理URL未注册

2020-01-13 22:50:05 15 0 0
阅读详情

程序开发 封装vue微信公众号分享方法,兼容iOS

上篇文章说到 vue的jssdk授权方案 ,这篇中使用的上篇的方法授权。 分享个公众号分享引到图片 这里设置一个公共方法: /** * 分享 * @param {Object} data 分享内容 title 分享标题 thumb分享图片 content 分享描述 * @param {String} fullPath 分享路径 通过 this.$route.fullPath 获取传入 */ export function share(data, fullPath) { // 设置自定义分享 ready(["updateTimelineShareData", "updateAppMessageShareData"]).then(_ => { wx.updateTimelineShareData({ title: data.title, // 分享标题 link: window.location.protocol + '//' + window.location.host + fullPath, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致 imgUrl: data.thumb, // 分享图标 success: function () { // 设置成功 } }); wx.updateAppMessageShareData({ title: data.title, // 分享标题 desc: data.content, // 分享描述 link: window.location.protocol + '//' + window.location.host + fullPath, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致 imgUrl: data.thumb, // 分享图标 success: function () { // 设置成功 } }); }); } 使用     share({title: '分享标题', content: '分享描述', thumb: '分享图片'}, this.$route.fullPath)

2019-12-16 23:56:56 55 0 0
阅读详情

程序开发 解决vue的history模式微信jssdk授权认证在ios上失败问题

本篇方案适用于vue 的 history模式,hash模式不适用! 使用spa模式的vue的 history 路由模式,在ios上加载微信jssdk授权认证出现失败问题。由于ios只记录第一次进来的url,在其他页面调用config授权不能使用window.location.href 做为认证url。 需要做的是如果在ios下,记录第一次进来时的url,调用config时用储存好的url调用 首先在 router 中添加 afterEach import { config } from './utils/wx'; router.afterEach((to, from) => { // 伸手党福利 // window.__wxjs_is_wkwebview // true 时 为 IOS 设备 // false时 为 安卓 设备 安卓默认使用to.fullPath let url = to.fullPath if (window.__wxjs_is_wkwebview) { // IOS // 第一次进来记录url window.entryUrl 自定义window对象 if (window.entryUrl == '' || window.entryUrl == undefined) { window.entryUrl = to.fullPath // 将后面的参数去除 url = to.fullPath }else { // 后续进来直接使用第一次保存的url url = window.entryUrl } } config(url) // 封装的微信config方法 传入url }) // ./utils/wx.js import { config as configWeChat } from '@/api/WeChat' // 后端接口 import { getToken } from './auth' import { Toast } from 'vant' /** * 通过config接口注入权限验证配置 接受url */ export function config(url) { return new Promise(async (res, rej) => { // 接口请求获取config签名数据 const { data } = await configWeChat({ token: getToken(), url: window.location.protocol + '//' + window.location.host + url // 获取协议 + '//' + 网站域名 + 传入域名 拼接成完整url }) wx.config({ debug: false, appId: data.appId, // 必填,公众号的唯一标识 timestamp: data.timestamp,

2019-12-14 23:31:08 64 0 0
阅读详情

程序开发 在ts中axios返回not exist on type 'AxiosResponse'

vue的axios请求返回值调取时报下面这错误 Property 'content' does not exist on type 'AxiosResponse<any>'.Vetur(2339) 解决方法是新增一个 axios.d.ts 文件,内容如下 import * as axios from 'axios' declare module 'axios' { interface AxiosInstance { (config: AxiosRequestConfig): Promise<any> } } 就可以解决了 方案来自 https://github.com/axios/axios/issues/1510#issuecomment-529284409

2019-12-12 15:33:05 215 0 0
阅读详情

程序开发 yarn upgrade 更新依赖包

更新依赖包时yarn.lock、package.json同步更新版本信息 yarn upgrade-interactive --latest // 需要手动选择升级的依赖包,按空格键选择,a 键切换所有,i 键反选选择

2019-11-12 10:36:21 94 0 0
阅读详情

程序开发 js动态添加js文件

/** * 动态添加js * @param {String}} url js地址 * @param {Function}} callback 回调 */ function loadJS(url, callback) { var script = document.createElement('script'), fn = callback || function () { }; script.type = 'text/javascript'; //IE if (script.readyState) { script.onreadystatechange = function () { if (script.readyState == 'loaded' || script.readyState == 'complete') { script.onreadystatechange = null; fn(); } }; } else { //其他浏览器 script.onload = function () { fn(); }; } script.src = url; document.getElementsByTagName('head')[0].appendChild(script); } // 加载jquery loadJS('https://cdn.bootcss.com/jquery/3.4.1/jquery.min.js',function(){});

2019-11-03 10:41:20 81 0 1
阅读详情
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 45
前往