Vue2.x-社交网络程序项目的总结
最近几天一直在学习Vue的课程,通过这个项目进行进一步的学习Vue方面的知识。掌握如何使用Vue搭建前端,如何请求Node.js写好的后端接口。
一、实现前后端连载
首先在后端的文件中 vue init webpack client 创建好client这个项目文件。在这里会遇到一个问题,就是运行前端和后端代码都有各自对应的命令,
解决方法: 用concurrently
concourrently的作用就是让"阻塞"的命令, 可以并发执行, 我们改写package.json内的scripts中

这样 npm run dev 就会实现前后端的连载,方便了很多
二、页面和路由的搭建
这一块没什么难的知识点,使用的是bs4框架和fontawesome来实现页面的设计。在index.html文件中引入




三、登录和注册的实现
注册 首先定义一个对象 通过 v-model 进行数据的绑定,在请求接口时把该数据传过去

使用axios来实现向后台发送请求

登录 和注册同理 将登录需要的信息定义一个对象 通过v-model进行数据绑定,在请求接口是把数据传入


在请求过程中,存在跨域的问题,在config文件下的index,js中找到proxyTable来解决跨域问题

上文接口中的api 就是target里的地址
三、获取token和解析token
关于token我会另外写一篇随笔来学习和总结。下面主要讲解项目中实现的功能这一块。因为在登录请求成功后,会有一个token,所以此时将token存储到localStorage中去

然后请求拦截 设置统一的header(...说实话这一块有点懵不是很懂,需要下去再好好学习一下)

四、提高用户体验(错误提醒)
当用户输入的内容有误为了提高用户的体验,应该告诉他们哪里错误。这里用到了BS的一个属性is-invalid ,当输入有误时,就会显示相应的提示
,当输入有误时,就会显示相应的提示
五、成功后的页面跳转
this.$router.push() this.$router 相当于一个全局的路由器对象,包含了很多属性和对象(比如 history 对象),任何页面都可以调用其 push(), replace(), go() 等方法
关于 push() 方法:
想要导航到不同的 URL,则使用 router.push 方法。这个方法会向 history 栈添加一个新的记录,所以,当用户点击浏览器后退按钮时,则回到之前的 URL。
当你点击 <router-link> 时,这个方法会在内部调用,所以说,点击 <router-link :to="..."> 等同于调用 router.push(...)
六、检测和处理 token过期

七、全局守卫
当用户通过地址栏输入来进行页面的跳转时,要进行路由守卫,功能实现如下:

八、Vuex实现数据的存储
关于Vuex这块对我来说理解的很浅,还是没有去理解其中的原理。我会专门写一个随笔对Vuex进行学习和记录。这个项目中在新建的store的文件中,对getters、mutations、actions独立封装

九、关于加载动画的实现
在这个项目中用的是gif图来实现加载的动画效果。在新建的loading.vue组件里引入图片

本项目中实现加载动画是通过Vuex actions的分发。首先是将存在state里的loading值设置为false, 然后在数据请求时改为true。

之前写的音乐app项目中也用到了加载组件。是用v-if对数据是否存在进行判断,如果有数据就实现组件。通过一次性定时器Setimeout来进行时间的控制


十、退出登录和头像获取
在导航栏中添加退出功能,用v-if和v-show进行限制。v-if判断用户信息是否为空,v-show判断是否为登录状态isLogin . 头像绑定的是avatar,然后设置好样式


十一、增删改查
Vue2.x-社交网络程序项目的总结的更多相关文章
- Web应用程序项目XX已配置为使用IIS
		今天在看开源项目Umbraco是,出现一个项目加载不了,并报如下错误: Web应用程序项目Umbraco.Cms.Web.UI已配置为使用IIS.若要访问本地IIS网站,必须安装下列IIS组件..,如 ... 
- 转:Web应用程序项目XX已配置为使用IIS
		转:http://www.cnblogs.com/Joetao/articles/2392526.html 今天在看开源项目Umbraco是,出现一个项目加载不了,并报如下错误: Web应用程序项目U ... 
- 在 Visual Studio 2013 中创建 ASP.NET Web 项目(1):概述 - 创建 Web 应用程序项目
		注:本文是“在 Visual Studio 2013 中创建 ASP.NET Web 项目”专题的一部分,详情参见 专题导航 . 预备知识 本专题适用于 Visual Studio 2013 及以上版 ... 
- VS 2010 WebSite网站 使用CodeBehide 方式开发[Web应用程序项目转Web网站]
		由于生成Web应用程序的文件非常大,100M左右,上传到香港太慢,对于运维工作很不现实, 所以只能改用单个源代码文件上传方式,也就是Web网站方式,但VS2010中只提供Web网站转Web应用程序功能 ... 
- Web 应用程序项目 MvcApplication1 已配置为使用 IIS。
		今天网上下了一个项目,加载不了,并报如下错误: Web 应用程序项目 MvcApplication1 已配置为使用 IIS. 若要访问本地 IIS 网站,必须在管理员帐户的上下文中运行 Visual ... 
- 用于 Visual Studio 和 ASP.NET 的 Web 应用程序项目部署常见问题
		https://msdn.microsoft.com/zh-cn/library/ee942158(v=vs.110).aspx#can_i_exclude_specific_files_or_fol ... 
- Windows Phone 8初学者开发—第10部分:数据绑定应用程序和透视应用程序项目模板简介
		原文 Windows Phone 8初学者开发—第10部分:数据绑定应用程序和透视应用程序项目模板简介 原文地址: http://channel9.msdn.com/Series/Windows-Ph ... 
- Web 应用程序项目 XXXX 已配置为使用 IIS。 无法访问 IIS 元数据库。您没有足够的特权访问计算机上的 IIS 网站。(转载)
		Web 应用程序项目 XXXX 已配置为使用 IIS. 无法访问 IIS 元数据库.您没有足够的特权访问计算机上的 IIS 网站. 2012年05月19日 ⁄ 综合 ⁄ 共 261字 ⁄ 字号 小 中 ... 
- 如何:使用 Visual Studio 中的一键式发布来部署 Web 应用程序项目
		原文: 如何:使用 Visual Studio 中的一键式发布来部署 Web 应用程序项目 本主题介绍如何在以下产品中使用 一键式发布 发布(部署)Web 应用程序项目: Visual Studio ... 
- 开发一个微信小程序项目教程
		一.注册小程序账号 1.进入微信公众平台(https://mp.weixin.qq.com/),注册小程序账号,根据提示填写对应的信息即可.2.注册成功后进入首页,在 小程序发布流程->小程序开 ... 
随机推荐
- HTML之必备meta标签
			meta标签写在HTML的<head>中,推荐每个手机H5页面必加以下的代码: <head> <meta charset="UTF-8"> &l ... 
- VS调试时修改代码
			最近碰到一个问题,就是vs在调试模式下无法修改代码之后再继续,这种严重影响工作效率的问题怎么能忍,所以决心把这个坑填满.网上搜了大堆有头无尾有尾无头的答案,我一个一个试了几乎都没啥用.最后通过不断的测 ... 
- hadoop开启Service Level Authorization 服务级认证-SIMPLE认证-过程中遇到的坑
			背景描述: 最近在进行安全扫描的时候,说hadoop存在漏洞,Hadoop 未授权访问[原理扫描],然后就参考官方文档及一些资料,在测试环境中进行了开启,中间就遇到了很多的坑,或者说自己没有想明白的问 ... 
- ZooKeeper系列(一)—— ZooKeeper 简介及核心概念
			一.Zookeeper简介 Zookeeper 是一个开源的分布式协调服务,目前由 Apache 进行维护.Zookeeper 可以用于实现分布式系统中常见的发布/订阅.负载均衡.命令服务.分布式协调 ... 
- 【KakaJSON手册】03_JSON转Model_03_key处理
			有时候,服务器返回的JSON数据的key跟客户端模型的属性名可能不一致,比如客户端遵守驼峰规范叫做nickName,而服务器端返回的JSON可能叫做nick_name.这时候为了保证数据转换成功,就需 ... 
- Laravel框架内实现api文档:markdown转为html
			前后端分离的工作模式于今是非常流行了,前后端工作的对接,就离开不了API文档的辅助. 根据自己以往的工作经历,以及了解的一些资讯,API文档的建立,无非以下几种方式: 1. word文档模板 2. 第 ... 
- fiddler抓HTTPS及APP请求的配置教程
			一.fiddler安装 Fiddler官网下载Fiddler进行安装:https://www.telerik.com/fiddler 二.fiddler设置抓取HTTPS的请求 fiddler默认设置 ... 
- 记:使用vue全家桶 + vux组件库 打包成 dcloud 5+ app 开发过程中遇到的问题
			vue-cli 版本:2.9.6 webpack 版本:3.6.0 1. vue-cli 安装好之后,不是自动打开默认浏览器 在 config文件夹 ---> dev选项中,有个 autoO ... 
- 【转】Python实现智能五子棋
			前言 棋需要一步一步下,人生需要一步一步走.千里之行,始于足下,九层之台,起于累土. 用Python五子棋小游戏. 基本环境配置 版本:Python3 相关模块: 本文所做工作如下: (1) 五子棋界 ... 
- Ranger-hdfs插件压测
			公司的并发量很大,担心使用ranger-hdfs插件后 namenode扛不住压力 所以需要本人进行压测 没有在网上找到其他文档 资料太少了 决定自己写一份 介绍下压测环境 15个节点 集群高可用两个 ... 
