最近几天一直在学习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-社交网络程序项目的总结的更多相关文章

  1. Web应用程序项目XX已配置为使用IIS

    今天在看开源项目Umbraco是,出现一个项目加载不了,并报如下错误: Web应用程序项目Umbraco.Cms.Web.UI已配置为使用IIS.若要访问本地IIS网站,必须安装下列IIS组件..,如 ...

  2. 转:Web应用程序项目XX已配置为使用IIS

    转:http://www.cnblogs.com/Joetao/articles/2392526.html 今天在看开源项目Umbraco是,出现一个项目加载不了,并报如下错误: Web应用程序项目U ...

  3. 在 Visual Studio 2013 中创建 ASP.NET Web 项目(1):概述 - 创建 Web 应用程序项目

    注:本文是“在 Visual Studio 2013 中创建 ASP.NET Web 项目”专题的一部分,详情参见 专题导航 . 预备知识 本专题适用于 Visual Studio 2013 及以上版 ...

  4. VS 2010 WebSite网站 使用CodeBehide 方式开发[Web应用程序项目转Web网站]

    由于生成Web应用程序的文件非常大,100M左右,上传到香港太慢,对于运维工作很不现实, 所以只能改用单个源代码文件上传方式,也就是Web网站方式,但VS2010中只提供Web网站转Web应用程序功能 ...

  5. Web 应用程序项目 MvcApplication1 已配置为使用 IIS。

    今天网上下了一个项目,加载不了,并报如下错误: Web 应用程序项目 MvcApplication1 已配置为使用 IIS. 若要访问本地 IIS 网站,必须在管理员帐户的上下文中运行 Visual ...

  6. 用于 Visual Studio 和 ASP.NET 的 Web 应用程序项目部署常见问题

    https://msdn.microsoft.com/zh-cn/library/ee942158(v=vs.110).aspx#can_i_exclude_specific_files_or_fol ...

  7. Windows Phone 8初学者开发—第10部分:数据绑定应用程序和透视应用程序项目模板简介

    原文 Windows Phone 8初学者开发—第10部分:数据绑定应用程序和透视应用程序项目模板简介 原文地址: http://channel9.msdn.com/Series/Windows-Ph ...

  8. Web 应用程序项目 XXXX 已配置为使用 IIS。 无法访问 IIS 元数据库。您没有足够的特权访问计算机上的 IIS 网站。(转载)

    Web 应用程序项目 XXXX 已配置为使用 IIS. 无法访问 IIS 元数据库.您没有足够的特权访问计算机上的 IIS 网站. 2012年05月19日 ⁄ 综合 ⁄ 共 261字 ⁄ 字号 小 中 ...

  9. 如何:使用 Visual Studio 中的一键式发布来部署 Web 应用程序项目

    原文: 如何:使用 Visual Studio 中的一键式发布来部署 Web 应用程序项目 本主题介绍如何在以下产品中使用 一键式发布 发布(部署)Web 应用程序项目: Visual Studio ...

  10. 开发一个微信小程序项目教程

    一.注册小程序账号 1.进入微信公众平台(https://mp.weixin.qq.com/),注册小程序账号,根据提示填写对应的信息即可.2.注册成功后进入首页,在 小程序发布流程->小程序开 ...

随机推荐

  1. 洛谷 P2157 [SDOI2009]学校食堂

    题意简述 每个人有一个口味,食堂每次只能为一个人做菜 做每道菜所需的时间是和前一道菜有关的,若前一道菜的对应的口味是a,这一道为b,则做这道菜所需的时间为a 异或 b 每个人都有一个容忍度,最多允许紧 ...

  2. Windows Server 2008利用NTFS管理数据

    今天我们学习关于NTFS管理数据 以下是学习的内容NTFS分区和FAT32分区的区别,如何将FAT32分区转化成NTFS分区,FAT 32 不支持大于4G ,NTFS权限设置 ,EFS加密 ,文件夹的 ...

  3. PHP危险函数总结学习

    1.PHP中代码执行的危险函数 call_user_func() 第一个参数 callback 是被调用的回调函数,其余参数是回调函数的参数. 传入call_user_func()的参数不能为引用传递 ...

  4. 纯数据结构Java实现(2/11)(栈与队列)

    栈和队列的应用非常多,但是起实现嘛,其实很少人关心. 但问题是,虽然苹果一直宣传什么最小年龄的编程者,它试图把编程大众化,弱智化,但真正的复杂问题,需要抽丝剥茧的时候,还是要 PRO 人士出场,所以知 ...

  5. Zabbix-绘制动态拓扑图高级篇

    0.官网文档介绍: https://www.zabbix.com/documentation/4.0/manual/config/visualisation/maps/map 一.设备名字使用宏显示 ...

  6. maven学习(1)下载和安装和初步使用(手动构建项目和自动构建项目)

    1:背景 关于项目的搭建,有些人使用开发工具搭建项目,然后将项目所依赖第三方jar 复制到类路径下面,上述搭建方式没有第三方类库的依赖关系,在导入一个jar包的时候,这个jar包还可能依赖其他jar包 ...

  7. Python day01 课堂笔记

    今天是第一天学习Python课程,主要从计算机基础,Python的历史,环境 ,变量,常量,注释,用户交互,基础数据类型 ,简单的if条件语句和while循环语句这几个来学习,重点的掌握内容是pyth ...

  8. ASP.NET Core 中的 ServiceProvider

    前言 在 ASP.NET Core 中,微软提供了一套默认的依赖注入实现,该实现对应的包为:Microsoft.Extensions.DependencyInjection,我们可以通过查看其对应的开 ...

  9. python 14 装饰器

    目录 装饰器 1. 开放封闭原则 装饰器 1. 开放封闭原则 扩展是开放的,增加新的功能:修改源码(修改已经实现的功能)是封闭的. 在不改变源码及调用方式的前提下额外增加新的功能. # 版一: imp ...

  10. Python 基础 2-3 列表的反转与排序

    引言 列表是按照特定格式排序而成的,有时候这种排序方式我们并不喜欢,我们希望它可以按照我们的方式来进行正序或者倒序排序,或其他的排序方式 反转与排序 比如说我这里有一组列表,里面存放的全部都是数值,但 ...