HTTP + 加密 + 认证 + 完整性保护 = HTTPS,小程序考虑到信息安全的问题,选用了更为稳定安全的https 来进行信息传递。 HTTPS协议的主要作用可以分为两种:一种是建立一个信息安全通道,来保证数据传输的安全;另一种就是确认网站的真实性。 这就导致了许多好用的http API无法在小程序中被调用。 但是也有解决方案。 1.中继访问中继访问有两种方式,一种需要自己拥有一个云服务和域名。 拥有域名和云服务器 域名完成备案之后下载证...
在做的项目是使用 vue-cli 脚手架为基础的,只能使用微信浏览器打开的。在某次更新功能代码后,被反馈在一些手机上会出现白屏。经过一番探索,多管齐下解决了问题白屏可能的原因: es6 代码没有被编译成 es5 ;文件打包路径错误;运营商塞入的广告 js 服务器报错,连累项目不能下载资源;针对 1 和 2 ,分别采取以下做法: 解决位置:config/index.js 文件:把 assetsPublicPath: / 改为assetsPublicPath: ./ build: {assetsPublic...
表现 设置了scroll-top的scroll-view组件,在组件所在vue实例data发生改变时会自动回弹到最上方 解决方案 打开 node_modules/mpvue/index.js, 在任意位置添加以下两个方法 function calcDiff(holder, key, newObj, oldObj) {if (newObj === oldObj || newObj === undefined) {return}if (newObj == null || oldObj == null || typeof newObj !== typeof oldObj) {holder[key] = newObj} else if (Array.isArray(newObj) && Array.i...
在解决问题之前,我们先来了解下 vue响应性原理: Vue最显著的一个功能是响应系统-- 模型只是一个普通对象,修改对象则会更新视图。受到javascript的限制,Vue不能检测到对象属性的添加或删除,因为vue在初始化实列时将属性转为getter/setter,所以属性必须在data对象上才能让vue转换它。但是vue可以使用 Vue.set(object, key, value)方法将响应属性添加到嵌套的对象上:如下代码: Vue.set(obj, _isHover, true);或者可以使用vm.$s...
vue.js 组件 组件(Component)是 Vue.js 最强大的功能之一。组件可以扩展 HTML 元素,封装可重用的代码。 在大型单页面应用中,处于对性能的考虑和首屏加载速度的要求,我们一般都会使用webpack的代码分割和vue-router的路由懒加载功能将我们的代码分成一个个模块,并且只在需要的时候才从服务器加载一个模块。 但是这种解决方案也有其问题,当网络环境较差时,我们去首次访问某个路由模块,由于加载该模块的资源需要一定的时间,...
vw 解决方案1. 安装并配置PostCss插件代码如下:npm i postcss-aspect-ratio-mini postcss-px-to-viewport postcss-write-svg postcss-cssnext postcss-viewport-units cssnano --S2. 对 PostCss 进行配置找到在根目录中的.postcssrc.js,对PostCSS插件进行配置 module.exports = {"plugins": {"postcss-import": {},"postcss-url": {},// to edit target browsers: use "browserslist" field in package.json"postcss-write-svg": ...
前言本人所说的小程序,都是基于mpvue框架而上的,因此BUG可能是原生小程序的,也有可能是mpvue的。问题描述在小程序input组件中,如果使用v-model进行双向绑定,在输入时会出现光标闪烁的BUG。 原因造成这个BUG的原因,是因为在原生小程序input组件上,进行了封装。才导致光标闪烁的问题。 解决方案这里提供了两种解决方案。各有各的优势,请选取合适的方案: 一、弃用v-model,使用@input适用于input组件单纯是用户手动输入的,而...
关于Vue中路由使用history模式,开发微信H5页面分享时在安卓上签名有效成功,但是在IOS设备上一直报错签名失效问题 问题描述:在Vue开发过程中,路由使用History模式下,在使用微信分享时,在微信开发者工具上一切正常。在安卓上一切正常。 但是!!!在IOS上反复报签名错误。 以下是真机测试截图,划掉黑线的是我个人IOS设备分享出来一直是服务号,接着下面分享出来自定义内容是安卓分享正常,话不多说上图!!!!我的代码:需求描述...
微信授权登录是一个非常常见的场景,利用微信授权登录,我们可以很容易获取用户的一些信息,通过用户对公众号的唯一openid从而建立数据库绑定用户身份.微信授权登录的机制这里不做详述,微信官方文档已有详述,简述就是通过跳转微信授权的页面,用户点击确认后,微信会跳到回调页面,此时回调页面url上会携带code参数,通过code参数,后端可以拿code换取拥护openid,或者用户信息 在vue项目中,通常是一个SPA应用,即所有的页面都是同一个html,通...
前言背景情况 vue - 2.5.11vue-cli 使用模板 webpack-simplehttp请求:axiosVue 官方对于 ie 浏览器版本兼容情况的描述是 ie9+,即是 ie9 及更高的版本。经过测试,Vue 的核心框架 vuejs 本身,以及生态的官方核心插件(VueRouter、Vuex等)均可以在 ie9 上正常使用。 Vue 的作者尤雨溪对于Vue 的学习建议 中有提及为了将项目更好的生态化/工程化,要尽可能学习及使用新的 ECMAScript 规范。目前 ES6/ES2015 是可用度和稳定度较高的...
最近遇到这个需要单页访问跨域后台的问题。可以按照如下设置: proxyTable: { /list: { target: http://api.xxxxxxxx.com, pathRewrite: { ^/list: /list } } }这样我们在写url的时候,只用写成/list/1就可以代表api.xxxxxxxx.com/list/1.那么又是如何解决跨域问题的呢?其实在上面的list的参数里有一个changeOrigin参数,接收一个布尔值,如果设置为true,那么本地会虚拟一个服务端接收你的请求并代你发送该请求,这样就不会有跨域...
方法 后台更改header使用http-proxy-middleware 代理解决(项目使用vue-cli脚手架搭建)Jquery jsonp后台更改header header(Access-Control-Allow-Origin:*);//允许所有来源访问 header(Access-Control-Allow-Method:POST,GET);//允许访问的方式使用http-proxy-middleware 代理解决(项目使用vue-cli脚手架搭建) 打开config/index.js,在proxyTable中添写如下代码: proxyTable: { /api: { target: 填写请求源地址, //源地址 chan...
最近在做的需求,涉及到级联查询,需要根据上级下拉框的内容,查询出下级下拉框列表,因为级联只有两级,且后期对表中的数据几乎不会改动,所以我设计的表存的直接是中文。 菜单如下:代码如下: var url = "${basePath}/institutionConfig/getDepartmentByCenter.do?param=" + center; $.get(url, function (data) {var list = data.data;for (var i = 0; i < list.length; i++) {departmentSelector += "<option value=" + list[...
一、异步编程的终极解决方案前几天写过关于 javascript 异步操作的文章《Javascript Promise 详解》. 最近在学习 Puppeteer 的时候又发现另一种异步编程解决方案:Async/Await. 异步操作是 JavaScript 编程的麻烦事,麻烦到一直有人提出各种各样的方案,试图解决这个问题。 从最早的回调函数,到 Promise 对象,再到 Generator 函数,每次都有所改进,但又让人觉得不彻底。 它们都有额外的复杂性,都需要理解抽象的底层运行机制。 ...
同一个生产部署项目,基内外网的访问路径并不相同,内网是基于域名根目录来访问,而外网却指向了一个子目录。 eg. : vue-router: history模式 内网环境:192.168.1.1:8080/index.html 外网环境:domain.com/ttsd/index.html 由于开发出来的项目是要部署在客户方,且客户并不想单独拿一个域名(或子域)来部署,这时,打包后的程序就要作一些配置方面的修改了。 修改配置文件 1、把打包后的资源引用修改为相对路径 找到 config/ind...