微信授权登录提示code-2

appid和appsecret应该是移动应用,而非网页应用

微信授权登录提示code:-100/自定义基座无法微信登录和分享

开发者账号配置的应用签名应该是md5加密后的值,而不是原字符串

生产环境proxyTable不生效,导致接口500

两种解决办法:

①入口文件使用网络地址,且和接口在同一域名下

②(推荐)

入口文件依旧是index.html

在config/prod.env和config/dev.env下添加API_ROOT

'use strict'

module.exports = {

NODE_ENV: '"production"',

API_ROOT: '"http://cross.precision-wechat.com"'

}

在main.js里设置baseUrl

axios.defaults.baseURL = process.env.API_ROOT

css内背景图片使用相对路径,打包测试不出现

修改config/index,js内的这一行

// Paths

assetsRoot: path.resolve(__dirname, '../dist'),

assetsSubDirectory: 'static',

assetsPublicPath: './',

import进来的样式表没有被lib-flexible转为rem

转换写法,改为

ApplePay沙盒测试登录app store失败

不能直接登录app store,需要在点击付款时登录沙盒账号

微博分享闪退

Dcloud的锅,在授权失败时授权层会闪现闪退,授权失败有两种情况,1网络问题授权失败2你没安装新浪微博,要再加一层判断,如果授权失败则进行提示。

plus.share.getServices(function(s){

s.forEach(function(item) {

if(item.id === 'sinaweibo') {

$this.shares = item;

}

});

if($this.shares.authenticated) {

// 已授权

$this.shares.send($this.sinashareMsg, function() {

plus.nativeUI.toast($this.langs.SHARE_SUCCESS);

}, function(e) {

plus.nativeUI.toast($this.langs.SHARE_FAIL);

})

}else {

// 未授权

$this.shares.authorize(function() {

$this.shares.send($this.sinashareMsg, function() {

plus.nativeUI.toast($this.langs.SHARE_SUCCESS);

}, function(e) {

plus.nativeUI.toast($this.langs.SHARE_FAIL);

})

}, function(e) {

// 授权失败

plus.nativeUI.toast($this.langs.SHARE_FAIL);

})

}

}, function(e){

plus.nativeUI.toast(e.message);

});

IOS真机测试,el-input光标全满,输入时错位

设置line-height=字体大小

iPhone X底部有个安全区,导致fixed+bottom的导航没有保持在最底部

打包后在index.html`

`的content里加一句`viewport-fit=cover`

使用plus.createWebview创建webview打开第三方链接出现的诸多问题

①在打开的连接中执行一段脚本

$this.payw.evalJS(script);

安卓测试无错,iPhone不执行

解决:

将evalJS代码放在loaded里

$this.payw.addEventListener('loaded',function () {

$this.payw.evalJS(string);

});

②loaded内代码执行了两次,导致页面跳转两次

Dcloud的锅,解决办法:

var isLoaded = false;

$this.payw.addEventListener('loaded',function () {

if(isLoaded){return true}

isLoaded=true;

$this.payw.evalJS(string);

});

③使用loading监听页面跳转,跳转到执行成功页面即close当前webview,但IOS下监听无效

Dcloud的锅,loading中webview.getUrl获取的永远是上一步的url,而不是当前页面的真正url

一开始想更换loaded,后来发现在IOS上loaded有些webview只执行一次,有些则能每次跳转都执行,不太稳定,最终决定使用progressChanged

解决方案:使用loaded来evalJS,progressChanged来对比地址

var isLoaded = false;

payw.addEventListener('loaded',function () {

if(isLoaded){return true}

isLoaded=true;

payw.evalJS(string);

})

payw.addEventListener('progressChanged',function () {

// 监听是否成功

console.log(payw.getURL())

var callbacklink = payw.getURL().split('?')[0];

// if(callbacklink === successUrl) {

// plus.webview.close(payw)

// console.log('success');

// }

// if(callbacklink === failUrl) {

// // 支付失败

// plus.webview.close(payw);

// console.log('fail');

// }

// if(callbacklink === cancelUrl) {

// plus.webview.close(payw)

// console.log('cancel');

// }

})

④progressChanged也会引发执行多次的问题

可以在判断成功后remove掉事件

$this.fbsharew.addEventListener('progressChanged', handlePChange );

function handlePChange (e) {

if($this.fbsharew.getURL().split('?')[0] === finishlink) {

$this.fbsharew.removeEventListener('progressChanged', handlePChange );

}

}

处理安卓返回键,使返回时关闭所有webview

// 写在mounted内

// 处理安卓返回键问题

plus.key.removeEventListener('backbutton', handleBack );

plus.key.addEventListener('backbutton', handleBack )

function handleBack() {

var wvs=plus.webview.all();

for(var i=0;i

if(wvs[i].getURL() !== plus.webview.currentWebview().getURL()) {

plus.webview.close(wvs[i]);

$this.switchUrl();// 判断是后退还是回到其他页面的方法

}

}

}

动态添加的HTML节点如何绑定事件

有这个需求是因为有多语言版本,文本从后台读取。

比如

By creating your account, you agree to the Terms of Use and Privacy Policy of this site.

放在底部,点击其他地方无反应,但点击Terms of Use或者Privacy Policy则要出现条款浮层

解决办法:

后台添加语言仅修改文字,不要删除标签

By creating your account, you agree to the Terms of Use and Privacy Policy of this site.

这段html标签写为:

事件处理:

popup (event) {

let id = event.target.getAttribute('data-id')

if(id === '0') {

console.log('Terms of Use')

}

if(id === '1') {

console.log('Privacy Policy')

}

}

只有一个点击范围的可以直接使用标签,通过event.target.nodeName来判断

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

hbuilder版本更新失败_初试vue-cli使用HBuilderx打包app的坑相关推荐

  1. vue cli 项目在打包时候报错 API fatal error handler returned after process out of memory

    问题描述 vue cli 项目在打包时候报错:API fatal error handler returned after process out of memory. 问题分析 从给出的提示可以看出 ...

  2. 使用HBuilderX将vue或H5项目打包app

    好久没有搞过将vue项目打包成app了,这两天刚好项目需要将vue开发的H5项目打包成APP,那就简单记录一次呗(之前也写过一篇打包app,是将项目使用hbuilder打开,转为webapp什么的,就 ...

  3. vue连线 插件_【Vue CLI】手把手教你撸插件

    现如今 Vue 作为主流的前端框架之一,其健全的配套工具,活跃的开源社区,让广发码农热衷追捧.Vue CLI 作为其官方的开发构建工具,目前已更新迭代到 4.x 版本,其内部集成了日常开发用到的打包压 ...

  4. vue dplayer 加载失败_最新vue脚手架项目搭建,并解决一些折腾人的问题

    话不多说,跟好lz的操作!!! 2020/8/1 第一步: ~~~~质问三连: ~~~~~~~~1.node.js安装了吗?:ht tp://nodejs.cn/download/ ~~~~~~~~2 ...

  5. hbuilder版本更新失败_HBuilderX版本升级问题引发的血案(持续更新中)

    1. HBuilderX2.0.1.20190614 升级到 HBuilderX2.2.2.20190816 问题:原生扫码插件扫码黑屏无法使用 原因:原生扫码插件源代码未对只有一个前置摄像头的情况进 ...

  6. VUE CLI 4.x 打包成APP后白屏解决办法打包APP教程

    一般用VUE打包项目后,再把项目打包成APK安装包,在手机上打开应用我们会发现打开是一片白,这是什么原因呢? 路由模式为history模式. 资源的路径不对.默认情况下,Vue CLI 会假设你的应用 ...

  7. vue cli 3项目打包到指定目录

    平常我们使用vue-cli构建项目,直接执行npm run build打包到dist目录下,然后项目一般又部署在我们服务器的根目录下.这样正常的流程,但是需求是多样的,有时我们就会遇到需要把项目部署到 ...

  8. Vue Cli 3.0打包生成app

    1.vue cli 3.0创建新工程,添加依赖mint-ui  ​ 2.项目配置中,公共路径设置为./,(注意,这一步非常重要,否则打包后项目找不到项目中文件) 修改保存后,可以看到vue.confi ...

  9. vue cli 项目在打包时候报错解决方法

    问题描述 报错一: 打包过程报错:Unexpected token name <i>, expected punc <;> IE浏览中报错:SCRIPT1003: 缺少':', ...

最新文章

  1. 扩展JavaScript的时候,千万要保留其原来的所有功能
  2. 【Vegas2007】11月23日-螃蟹的做法(蒸煮两法)
  3. codeigniter 禁止ip登录_「开源资讯」baigo SSO v4.0 beta-3 发布,单点登录系统
  4. 函数式接口作为方法的返回值类型案例
  5. CodeForces - 1535E Gold Transfer(树上倍增+交互)
  6. 大脚导入配置选择哪个文件_有史以来最全的 IntelliJ IDEA 配置图解
  7. 这个代码应该怎么写???
  8. php画弧,php绘制一条弧线的方法
  9. PAT 乙级 1008. 数组元素循环右移问题 (20) Java版
  10. 信噪比:高端科研级相机的核心参数
  11. jetty-maven-plugin
  12. java list map 效率_遍历Map和List的几种方法和性能比较
  13. 我国计算机辅助翻译专业,我国翻译硕士专业之计算机辅助翻译课程调查.pdf
  14. 从零开始 DIY 智能家居 - 基于 ESP32 的智能语音合成播报模块
  15. SolidWorks二次开发随记(一)
  16. 《微信公众平台开发最佳实践》——2.1 新浪SAE应用
  17. wpsa4排版_如何用WPS快速排版
  18. idea卸载不干净怎么办_Office卸载不干净怎么办?我想你一定需要Mac卸载Office的图文教程!...
  19. 做了9年程序员,为什么我还摆脱不了复制粘贴?
  20. python简易版爬虫

热门文章

  1. sylog mysql_25.2 配置使用基于mysql存储日志信息
  2. [python爬虫] Selenium高级篇之窗口移动、弹出对话框自登录
  3. 10.1 HTML介绍与开发环境的搭建
  4. 1130:找第一个只出现一次的字符
  5. 大数据WEB阶段(八)Tomcat服务器安装与详解、HTTP协议详解
  6. python3安装opencv
  7. 【Linux】一步一步学Linux——iptables-restore命令(188)
  8. python就业前景如何_2020年Python就业前景如何?就业岗位多不多?薪资高不高?...
  9. C++模板类的虚函数成员
  10. 记录java从左上到右下打印二维数组,从左下到右上打印二维数组