- 博客(16)
- 资源 (3)
- 收藏
- 关注
原创 Vue2.0使用嵌套路由实现页面内容切换/公用一级菜单控制页面内容切换
vue2.0使用嵌套路由实现页面跳转/一级菜单切换/routes配置childrendemo需求分析:图中菜单区域为header公用组件,点击相应的菜单选项跳转到对应的路由,在菜单下区域加载相应组件的内容。以下两图分别为点击“我的电站”、“个人中心”的效果demo结构介绍:登录成功后,跳转到index页面,并默认显示index/UserStation(我的电站),index
2018-02-28 19:08:48 26625 6
原创 Vue2.3.0+使用.sync修饰符对prop进行双向绑定/子组件同步prop到父组件绑定的值
vue2.3.0+使用.sync修饰符对prop进行双向绑定背景、概念:在一些情况下,我们可能会需要对一个 prop 进行“双向绑定”。事实上,这正是 Vue 1.x 中的.sync 修饰符所提供的功能。当一个子组件改变了一个带 .sync 的 prop 的值时,这个变化也会同步到父组件中所绑定的值。这很方便,但也会导致问题,因为它破坏了单向数据流。由于子组件改变 prop 的代码
2018-02-28 14:20:33 5798 2
原创 解决Windows环境下Git Bash 不能输入中文的问题
解决Windows环境下Git Bash 不能输入中文的问题打开Git Bash后,对窗口右键->Options->Text->Locale改为zh_CN,Character set改为UTF-8,保存重新打开Git Bash即可。结果测试:
2018-02-28 11:07:52 1978
原创 使用vue-router懒加载解决首次加载时资源过多导致的速度缓慢问题
使用vue-router懒加载解决首次加载时资源过多导致的速度缓慢问题当你的SPA(单页应用程序)变得复杂时,打包构建后的Javascript包会变得非常大,以至于严重影响页面的加载时间。vue-router支持WebPack内置的异步模块加载系统。所以,那些使用较少的路由组件不必打包进bundles里,只需要在路由被访问时按需加载。以下以一个简单的例子展示:1:非懒加载的路由写法...
2018-02-27 15:52:51 12365 5
原创 Package require os(darwin) not compatible with your platform(win32)
使用npm install 安装项目依赖时出现Package require os(darwin) not compatible with your platform(win32)的问题stackoverfllow.com上的回答为:This is an ignored error. fsevents is an optional dependency, is only used on m...
2018-02-27 15:30:27 28269
原创 Vue项目目录结构注解附assets与static目录的区别
static与assets的区别:为了回答这个问题,我们首先需要了解Webpack如何处理静态资产。在 *.vue 组件中,所有模板和CSS都会被vue-html-loader 及 css-loader 解析,并查找资源URL。例如,在 和 background: url(./logo.png) 中,"./logo.png" 是相对的资源路径,将由Webpack解析为模块依赖。
2018-02-27 14:57:48 5755
原创 注册/找回密码等功能中发送手机验证码后倒计时效果的实现(基于vue)
注册/找回密码等功能中发送手机验证码后倒计时效果的实现,基于vue、element-ui<template> <el-button size="small" type="primary" :disabled="disabled" @click="getVerifyCode">{{ btnText }}</el-button><
2018-02-26 15:28:06 2615
原创 基于Token进行身份验证
1.基于服务器的验证我们都是知道HTTP协议是无状态的,这种无状态意味着程序需要验证每一次请求,从而辨别客户端的身份。 在这之前,程序都是通过在服务端存储的登录信息来辨别请求的。这种方式一般都是通过存储Session来完成。基于服务器验证方式暴露的一些问题:1.Seesion:每次认证用户发起请求时,服务器需要去创建一个记录来存储信息。当越来越多的用户发请求时,内存的开销也会不断增加。2.可扩展...
2018-02-26 11:53:57 2493 2
原创 两种方法用于检查传入的数字是否为整数
两种方法用于检查传入的数字是否为整数方法一: /* * 转化为字符串,使用indexOf检查字符串是否包含'.',不包含则为整数 * */ function isInt(number) { var string = number.toString(); if (string.indexOf('.') == -1) { ...
2018-02-26 10:32:30 498
原创 多种方法实现数组去重以及字符串去重(ES5常用去重方式、ES6快捷去重、hash表方式去重)
字符串去重跟数组去重大同小异,将字符串转成数组即可使用数组去重方法。ES5常用方式: function unique(array) { var result = []; for(var i = 0; i < array.length; i++) { if (result.indexOf(array[i]) == -1) { ...
2018-02-26 09:38:26 3913
原创 JavaScript如何简单而准确地判断复杂数据类型
javaScript如何简单而准确地判断复杂数据类型?1:typeof 只能判断出基本数据类型例如:var a = 3; typeof a 的结果为 numbervar b = []; typeof b的结果为object,而不是array2:使用Object.prototype.toString.call(b)即可得到准确的数据类型array封装成一个方法,用于准确判断变量的类型。functio...
2018-02-24 16:49:21 1744
原创 Vue2.x—理解vuex核心概念action(使用到ES6的变量的解构赋值)
ActionAction 类似于 mutation,不同在于:Action 提交的是 mutation,而不是直接变更状态。Action 可以包含任意异步操作。让我们来注册一个简单的 action:const store = new Vuex.Store({ state: { count: 0 }, mut...
2018-02-24 15:48:13 12781
原创 使用localStorage解决浏览器刷新后无法再从vuex中获取数据的问题
假设有这样一个场景:用户登录后,用vuex管理用户的信息,登录成功后进入主界面,在进入主界面后刷新浏览器,此时vuex中的用户信息将无法获取到。那么应该如何解决?办法之一是使用localStorage保存用户信息。在登录成功后保存用户信息,刷新浏览器后从localStorage中获取用户信息,然后再通过vuex管理(mapMutations、mapGetters)。刷新浏览器后vuex中的数据消失...
2018-02-24 11:26:35 2748
原创 利用HTML5 canvas合并图片并解决Filaed to execute 'toDataURL' on 'HTMLCanvasElement'异常
有两张图片,如下图所示,如何将两张图片合并成一张?使用HTML5的canvas相关知识可以简单快捷地解决此需求。目录结构:注:源码使用原生js,不需引入第三方库:...
2018-02-24 10:37:38 1057
原创 简单地利用canvas载入视频
canvas加载视频和图片是一样的,使用drawImage,区别就是给一个定时器不停的抓取每帧的画面,放入Canvas画布里面,这个办法有点简单粗暴,原理为:监听了video的play事件,并设置定时器,每20ms调用一次drawImage,当video的ended事件触发时,清除定时器。<!DOCTYPE html><html lang="en"><head&g...
2018-02-16 08:53:36 1672
原创 十秒解决开发环境跨域问题——取消浏览器同源策略
解决开发环境跨域问题方法有很多,设置代理什么的略显繁琐;接下来介绍一个十秒解决开发环境跨域问题的方法——取消浏览器同源策,解决所有跨域问题,以谷歌浏览器为例。
2018-02-12 11:58:37 6833 1
mpvue音乐小程序项目源码/mpvue微信小程序demo
2018-11-14
vue2.0实现外卖APP商家模块,vue2.0实战项目例子
2018-01-02
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人