vue-shop项目第一天(用于记录 个人学习)
vue-shop 第一天
一.项目初始化
1.安装vuecli脚手架(依赖于webpack)[前端自动构建工具]。
2.安装插件(element-ui)[第三方插件库], 安装依赖(axios)[调用后端接口的模块]
3.需要将项目托管到码云[一个代码管理仓库],码云ssh的简单配置。
4.配置一下git(第一次使用),先进行本地提交,再根据提交 指令把仓库上传到码云仓库中。(第一次使用码云需要填写用户名以及密码)
5.进行后端配置(数据库用到mysql),安装数据库管理工具(phpstudy),利用工具把已经写好的sql文件添加到本地mysql数据库中。[电脑配置较差花了4分钟]。
6.运行后端服务器,首先安装依赖包,用node运行。 再利用(postman)[接口测试工具] 来根据后端服务器提供的接口文档,进行api可用性的验证。
二.实现登录功能
1.打开文件,查看工作目录的情况,切换到分支结构,进行代码的编写。
2.惊醒项目文件的清洁工作,还原基本。(此处遇到困难,eslint验证老报错,百般尝试无果,只好新建一个项目把vueui中的eslint标准降低再行尝试)!!!!解决:在建项目时候取消掉eslint插件的安装。
3.新建login.vue 完成结构的引用。 vue ui中安装less,css.loader安装完成但是编译运行失败【解决办法: 本地自行安装less的包即可解决】。
4.绘制登录组件。需要用到elementui需要在插件文件夾下导入插件。
知识点:css3 box-sizing属性 改变盒子的参考边框。加入字体图标。完善一下样式。
5.为表单添加数据绑定,并且为表单项添加一个简单的校验规则(element ui中的表单组件有说明。)
6.实现重置表单功能:为表单添加ref属性,点击重置按钮调用事件函数,函数的this指向vue组件,其中的$refs属性有表单ref的key,获取这个key就获取了表单的dom对象,再 调用(element ui)提供的Form Methods中的resetFields方法。
7.表单预验证:点击登录的先进行表单预验证Form Methods中的方法。
8.配置axios:(在main。js入口文件中)
import axios from 'axios'
//默认的请求根路径设置
axios.defaults.baseURL = 'http://127.0.0.1:8888/api/private/v1/'
Vue.prototype.$http = axios
9.调用axios向后段发送请求。利用async await获取返回的数据,
const {data: res} = await this.$http.post('login', this.loginForm);
进行对象属性的解构以及重命名。
10.登录结果的提示框:
//导入弹框提示组件
import { Message } from 'element-ui'
//改在到全局组件中
Vue.prototype.$message = Message
在函数中调用Message提供的方法就可以使用了。
11.将登陆成功后的 token(类似于凭证) 保存在客户端的 sessionStorage(仅在会话期间生效,localStorage在任何 时候 都生效),
window.sessionStorage.setItem("token",res.data.token);
之后通过编程式导航跳转到 ‘/home’ 这个路由地址
this.$router.push('/home')
vue-shop项目第一天(用于记录 个人学习)的更多相关文章
- vue app项目 第一天 基本架构和路由配置
一.前言 今天开始打算花6天时间 完成一个基于vue的买菜app 在这里记录一下项目的流程和第一次做这个项目遇到的坑 以及解决的办法 二.第一步 脚手架的安装 使用npm 安装好脚手架 安装脚手架教 ...
- [Vue音乐项目] 第一节 环境搭建
1.Node安装 登录官网,下载最新版本并安装: 在我的电脑内,执行以下操作:右键->属性->高级->环境变量->系统变量->path 查看是否有node的安装路径,没有 ...
- vue 重构项目第一步(vue-cli跟bootstrap)
一.先安装jq跟bootstrap 1.因为bootstrap依赖jq,先安装jq----->npm install jquery@1.11.3 --save-dev ----->可以 ...
- vue 自学项目笔记
感觉小青推荐的学习网课, 利用vue 仿制一个去哪网, 学习的东西很多, 在食用之前,需要先确保js 和css 过关 js https://www.bilibili.com/video/av3009 ...
- 前端架构之路:使用Vue.js开始第一个项目
Vue.js做为目前前端最热门的库之一,为快速构建并开发前端项目多了一种思维模式.本文通过一个简单的实例开始上手Vue.js开发. 一.技术准备 笔者建议在开始项目前,对以下两个技术点进行了解. ...
- Vue.js开始第一个项目
前端架构之路:使用Vue.js开始第一个项目 Vue.js做为目前前端最热门的库之一,为快速构建并开发前端项目多了一种思维模式.本文通过一个简单的实例开始上手Vue.js开发. 一.技术准备 使用 ...
- 关于vue+element-ui项目的分页,返回默认显示第一页的问题解决
关于vue+element-ui项目的分页,返回默认显示第一页的问题解决 问题描述 当前页面如下: 然后点击页码跳到第3页,然后在第三页点击页面链接跳转到新的页面 然后在新页面点击返回按钮,返 ...
- vue的项目结构记录
vue的项目结构 不知道大家有没这样的情况,面对刚配置好的脚手架,创建的文件不知道该放哪个文件下,导致后面开发一些文件不好找,不利于维护. 接下来我说说我项目中的一些文件: 首先是components ...
- Vue.jsbrowserify项目模板
Vue.js——60分钟browserify项目模板快速入门 概述 在之前的一系列vue.js文章,我们都是用传统模式引用vue.js以及其他的js文件的,这在开发时会产生一些问题. 首先,这限定 ...
随机推荐
- 系统之眼!Linux系统性能监控工具Glances
一.Glances介绍 glances是一个基于python语言开发,可以为linux或者UNIX性能提供监视和分析性能数据的功能.glances在用户的终端上显示重要的系统信息,并动态的进行更新,让 ...
- Java并发编程学习前期知识下篇
Java并发编程学习前期知识下篇 通过上一篇<Java并发编程学习前期知识上篇>我们知道了在Java并发中的可见性是什么?volatile的定义以及JMM的定义.我们先来看看几个大厂真实的 ...
- 关于Addressable的疑问
1)关于Addressable的疑问2)Addressable如何进行热更新3)如何设置SceneView相机的Shader变量4)Activity默认为SingleTask的原因5)关于Resour ...
- Crypto++ 无法解析的外部符号 CryptoPP::AssignIntToInteger
预处理器定义中添加:CRYPTOPP_NO_ASSIGN_TO_INTEGER 方案出自:https://github.com/weidai11/cryptopp/issues/389
- Js的new运算符
new运算符 在JavaScript中,new是一个语法糖,可以简化代码的编写,可以批量创建对象实例. 语法糖Syntactic sugar,指计算机语言中添加的某种语法,这种语法对语言的功能并没有影 ...
- 菜鸟教程-python中的包
转载自:http://www.runoob.com/python/python-modules.html 包是一个分层次的文件目录结构,它定义了一个由模块及子包,和子包下的子包等组成的 Python ...
- POJ1703 Find them Catch them 关于分集合操作的正确性证明 种类并查集
题目链接:http://poj.org/problem?id=1703 这道题和食物链那道题有异曲同工之处,都是要处理不同集合之间的关系,而并查集的功能是维护相同集合之间的关系.这道题中有两个不同的集 ...
- PU Learning简介:对无标签数据进行半监督分类
当只有几个正样本,你如何分类无标签数据 假设您有一个交易业务数据集.有些交易被标记为欺诈,其余交易被标记为真实交易,因此您需要设计一个模型来区分欺诈交易和真实交易. 假设您有足够的数据和良好的特征,这 ...
- CF1324B Yet Another Palindrome Problem 题解
原题链接 CF 127个测试点,好评 简要题意: 多组数据,问数组中是否有长度 \(\geq 3\) 的回文子序列. 我们需要找到本质. 题目不让我们求这个长度,只让我们判断,这是为什么呢? 如果答案 ...
- python学习(五)之列表元素的积
前几天,学完python的列表之后,我们老师留了一道关于列表的题目.几天后,老师讲解习题,很荣幸成为被老师点名讲解自己代码的其中之一下面把我的想法分享一下. 描述一个由n(n>1)个数字组成的列 ...