【Vue + axios】一个项目学会前端实现登录拦截

一个项目学会vue全家桶+axios实现登录、拦截、登出功能,以及利用axios的http拦截器拦截请求和响应。

前言

该项目是利用了Github 提供的personal token作为登录token,通过token访问你的Repository List。通过这个项目学习如何实现一个前端项目中所需要的
登录及拦截、登出、token失效的拦截及对应 axios 拦截器的使用。
Gihtub地址:https://github.com/superman66/vue-axios-github

阅读全文

在网页中引入Github-Star

最近喜欢上折腾点小东西,顺便练练技术,熟悉下开源社区的玩法。经常会看到网页中引入github repository 的start的图标和“fork me on github”的丝带,长👇这样:
img
img
有三种方式可以实现在页面、markdown引入star。

阅读全文

2017年阅读书单

1月阅读清单

《人性的枷锁》- 又是毛姆的经典作之一

这本书被看作是毛姆以自身成长经历为基础创作的小说,讲的是主人公菲利普如何在成长的过程中,摆脱种种人生的枷锁,终获自由的过程。
看完豆瓣书评才明白,原来并不止我一个人会在阅读过程中所产生痛苦之感。这种痛苦源自于小说中对生活真相毫不掩饰的揭露,彻底摧毁了心中对于理想生活的期望。
主人公历经重重经历,终摆脱枷锁,这是一种能力,也是一种幸福,毕竟大部分人一辈子都未能挣脱枷锁的束缚。越面对现实,越发现,你身上的枷锁已越来越多。
可悲的是,你摆脱枷锁的速度跟不上增加的速度。

阅读全文

我的2016年总结

今年我的拖延症已经改变了非常多,可是没想到,一拖再拖,一篇本该在2016年完成的总结一直拖到了今天才完成。

关于前端

从2015年开始接触前端到现在,已有两年的时间。可惜在2015年一整年的时间,感觉大部分的时间都被自己浪费了,没有太多的成长。浑浑噩噩得度过了一年。
不过还好,这种情况在今年得到了极大的改善。

阅读全文

2016阅读书单

记录2016阅读过的书籍。2016年从2月份记录开始到2016年结束,共计阅读了40本书籍。

阅读全文

使用Promise的链式调用解决多个异步回调问题

Promise简要介绍

所谓Promise,简单来说就是一个容器,里面保存着某个未来才会结束的事件(通常是一个异步操作)的结果。

阅读全文

Vue2.0实现简易豆瓣电影webApp

阅读全文

Mac使用tree生成目录结构

前言

程序员经常会有需求,需要列出项目的结构树。Mac或者Linux下可以使用tree列出项目结构,如下图这种:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
├── build
├── config
├── docs
│ └── static
│ ├── css
│ └── js
├── src
│ ├── assets
│ ├── components
│ ├── store
│ │ └── modules
│ └── views
│ ├── book
│ └── movie
└── static

阅读全文

《论孩子》-纪伯伦

昨天在看《少有人走的路》关于“爱与独立”那部分提到了父母与儿女的关系时,用到了纪伯伦的诗歌《论孩子》,深受感触。
付出真爱的人,应该永远把爱的对象视为独立的个体,永远尊重对方的独立和成长。这话不仅适用于父母,也适用于子女。当你渐渐长大,而父母不断老去的时候;当你成为了家里的支撑时,别忘记了把父母也视为独立的个体。
当然了,这也同样适合于任何亲密关系。别忘了将你的男(女)朋友,老婆(丈夫)也视为独立的个体。

阅读全文

不刷朋友圈的人是一种什么心态?

今早在电梯里看到的搜狗搜索广告中的一句搜索词“不发朋友圈的人是一种什么心态”。所以想写写“不刷朋友圈的人是一种什么心态”。因为今天刚好是坚持“每日总结100天行动”的第48天,作为延伸的习惯“不刷朋友圈,远离朋友圈”也已经坚持了25天。
对于我这种自控力弱的人,在平时工作生活中很容易出现分心的情况,其中最大的干扰因素便是朋友圈,我想我是患上了一种叫做“朋友圈”的瘾,即使我都把朋友圈这个功能关掉了,但依然无法阻止我每天不断得开启朋友圈查看别人的动态,从而来获得短暂的心理满足。这个成瘾机制是有理论依据的,但这不是我想写的内容。自从25天前我下定决心后,打算远离微信朋友圈后,一直坚持到现在。坚持的结果我很满意,因为只有除了刚开始的第2天和第3天因为忍不住各打开朋友圈一次,之后再也没有打开过。

阅读全文

《软技能:代码之外的生存指南》读书笔记(二)

生产力

如何提高你的生产力是一个永恒的话题。下面几条建议有助于你提高生产力:

  • 保持专注,注意力分散是高效生产力的killer;

阅读全文

《软技能:代码之外的生存指南》读书笔记(一)

前言

双十一在异步社区买的一本书,刚好在打6折。这种书名字看起来像是适合新手的样子,不过没关系,正好我是新手。

关于本书

说是一本书,还不如说是博客文章的集合。所以大可不必通篇浏览,只需挑选自己感兴趣的主题进行阅读即可。
这本书的定位是让你帮助你成为“优秀的软件开发人员”。所谓优秀的开发人员指的是那些能够把控自己的职业生涯、达成目标、享受生活的人。书中分为职业、自我营销、学习、生产力、理财、健身、精神七个主题。其中我觉得值得学习的包括职业、自我营销、学习、生产力、理财、健身

阅读全文

ionic登录拦截机制-使用Modal作为登录框

前言

先来说说网页和App中交互的不同。在网页中,页面与页面之间的跳转过程较少会采用转场动画,直接就是页面切换。
而在App的交互方式中,页面切换是有转场动画的。页面进入一般都是从右到左的动画切换。这种交互方式通常表示页面正常的切换。还有一种页面进入方式就是从下往上进入,这种交互方式一般用于登录拦截时,弹出登录框,表示得是非正常状态下的页面切换。如下图所示,就是登陆拦截情况下的从下往上的页面进入效果:
text

阅读全文

ionic隐藏底部菜单栏ion-tabs

前言

ionic中没有提供属性来控制底部菜单栏ion-tabs在页面中的显示与隐藏,只有一个类.tabs-item-hide可以控制,所以我们可以通过控制添加.tabs-item-hide来实现隐藏菜单栏的目的。

阅读全文

【ionic App问题总结系列】ionic 集成友盟插件以及多渠道打包

安装umeng提供的插件

第一步:下载SDK

下载地址:http://dev.umeng.com/analytics/h5/sdk-download

阅读全文

ionic开发App-问题收集总结

总结

使用ionic开发App算是告一段落了。使用前端的技术来统一移动端,不得不承认这个听起来很酷。JavaScript要统一世界的节奏。
然而现实并不是这样,使用ionic开发App虽然在开发速度上比原生开发快很多(有AngularJS的基础上,1~2个礼拜熟悉ionic框架,一个月左右做完App),但依然存在下面这个几个比较致命的问题:

阅读全文

angular.copy 取消变量的双向绑定及解析

前言

AngularJS的双向绑定在表单应用中强大又方便,但是偶尔会遇到需要解除对象变量的双向绑定。Angular提供的angular.copy的方法可以实现解除双向绑定。今天就来说说angular.copy

阅读全文

【ionic App问题总结系列】如何更新app版本

ionic 如何进行自动更新

ionic App更新有两种方式:第一种是普通的从远程下载apk,安装并覆盖旧版本。另外一种就是采用替换www文件夹的内容,实现应用内更新,而无需下载安装apk。
这篇文章讲的是通过第一种方式,来实现app的更新。
App更新流程比较简单,如下图:
ionic
这里用到的后端的接口字段如下:

1
2
3
4
5
6
{
"update_flag", // 更新的flag,一般取值分为不更新,普通更新,强制更新三种
"url", // 远程apk下载地址
"desc", // 更新描述
""
}

阅读全文

【ionic App问题总结系列】点击系统返回键退出App

在安卓下,如果不处理系统返回键的事件,那么每次点击返回键,将页面将返回到上一个路由,这种逻辑不符合app的路由逻辑。正确的应该是:当页面到了各个导航页的首页时,此时再按返回键应该提示是否退出app,用户点击确认后退出app。

run()方法中添加下面的方法

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44

$ionicPlatform.registerBackButtonAction(function (e){
//阻止默认的行为
e.preventDefault();
// 退出提示框
function showConfirm() {
var servicePopup = $ionicPopup.show({
title: '提示',
subTitle: '你确定要退出应用吗?',
scope: $rootScope,
buttons: [
{
text: '取消',
type: 'button-clear button-assertive',
onTap: function () {
return 'cancel';
}
},
{
text: '确认',
type: 'button-clear button-assertive border-left',
onTap: function (e) {
return 'active';
}
},
]
});
servicePopup.then(function (res) {
if (res == 'active') {
// 退出app
ionic.Platform.exitApp();
}
});
}
// 判断当前路由是否为各个导航栏的首页,是的话则显示提示框
if ($location.path() == '/index' || $location.path() == '/product' || $location.path() == '/account' || $location.path() == '/more') {
showConfirm();
} else if ($ionicHistory.backView()) {
$ionicHistory.goBack();
} else {
showConfirm();
}
return false;
}, 101); //101优先级常用于覆盖‘返回上一个页面’的默认行为

阅读全文

告别Android,记录过去的照片

今天晚上将魅族MX4上的手机卡拿下来,放到iPhone上,就意味着今天开始要彻底抛弃Android阵营了,从生活到工作都已经彻底拥抱iOS和macOS了。这篇文章用来记录从MX4导出的一些照片。依稀还记得大三买单反那会,对摄影充满着热爱。随着时间的过去,从学生变成了上班一族,单反已经快要发霉了。偶尔还能用手机拍拍照片,称之为手机摄影。刚刚整理照片的时候,挑选了一些照片,一张照片就是一个故事,我记得每张照片后面的故事。愿生活不止眼前的代码,还有远方的摄影。

阅读全文