第一期vue项目实践问题与收获总结

Vue学习记录,心得体会-2 在每次 阅读详情

第一期vue项目实践问题与收获总结

1. 存在问题

1.1 本地静态存储信息

​ 还未实现本地静态存储用户的登录信息。此时的信息仍是储存在cookie会话缓存中。不利于全局的随时调用。(后期可以利用vuex的store实现改进)

在这里插入图片描述

1.2 用户权限的区分

​ 不同的用户应该拥有不同的用户权限来对后台进行管理,并且可以对用户的权限进行更改(后期还可以增加权限修改功能,以及登录时的用户权限区别)

2. 收获

2.1 路由导航守卫拦截未登录的访问

​ 只有通过登录界面的跳转才会被允许,并且要验证后台返回的token值

在这里插入图片描述

2.2 element-UI的使用

​ 通过element-UI提供的组件与模板可以实现一些简单项目的快速开发(ps:但从长远角度来看不如自己花点时间写一套自己的模板)

<el-form ref="loginFormRef" :model="loginForm" :rules="loginFormRules"  class="login_form" label-width="0px">
          <el-form-item prop="username">
              <el-input v-model="loginForm.username" prefix-icon="el-icon-user-solid"></el-input>
          </el-form-item>
          <el-form-item prop="password">
              <el-input v-model="loginForm.password" prefix-icon="el-icon-postcard" type="password"></el-input>
          </el-form-item>
          <el-form-item class="code" prop="code">
            <el-input  v-model="loginForm.code" size="large" type="text" placeholder="验证码: "></el-input>
          </el-form-item>  
            <img style="float:right; width:150px;height:40px" @click="replace" :src="imgCode" alt="">
          <el-form-item class="btns">
              <el-button type="primary" @click="login" round >登录</el-button>
              <el-button type="register" @click="register" round>注册</el-button>
          </el-form-item>
</el-form>

2.3 md5方式对密码加密

​ 为了增加用户信息的安全度需要使用到md5对用户密码进行加密,使用npm install --save js-md5命令安装依赖,之后在需要使用的项目文件中导入import md5 from ‘js-md5’;即可使用

import {strToMd5} from '../util/md5.js'导入md5方法
this.loginForm.password=strToMd5(this.loginForm.password)//使用md5方法加密

2.4 router路由实现页面跳转

​ 通过配置路由实现页面之间的转换,以及使用嵌套路由,实现页面的嵌套显示

import Router from 'vue-router'
import Login from '../components/Login'
import Home from '../components/Home'
import Register from '../components/Register'
import Users from '../components/role/Users.vue'
import Error404 from '../components/Error404'
import welcome from '../components/welcome'
import Chpassword from '../components/role/Chpassword.vue'
Vue.use(Router);
const router = new Router({
    routes: [
        {
            path:'/login',
            name: 'login',
            component:Login
        },
        {
            path: '/',
            redirect: '/login'
        },
        {
            path:'/home',
            component:Home,
            children:
                [
                    {
                        path:'users',
                        component:Users
                    },
                    {
                        path:'welcome',
                        component:welcome
                    },
                    {
                        path:'chpassword',
                        component:Chpassword
                    },
                ]
            
        },
        {
            path:'/register',
            component:Register,
        },
        {
            // *号表示剩余的全部情况
            path:'*',
            component:Error404,
        },
       
    ]
})

2.5 axios向后端发起请求

​ 通过异步请求向后端提交数据,并接受后端返回的数据实现登录请求

login()
      {
        this.$refs.loginFormRef.validate(async valid=> {
          if(!valid) return;
          const {data:res}=await this.$http.post("login",this.loginForm);
          if(res.code!=200)return this.$message.error('登录失败!');
          this.$message.success('登录成功!');
          window.sessionStorage.setItem('token',res.data);
          window.sessionStorage.setItem('password',this.loginForm.password);
          this.$router.push("/home/welcome");
        });
      },

2.6 vue项目目录结构

build 文件是项目构建 webpack 相关代码

config 是配置目录,包括端口号等

node_modules 是npm 加载的项目依赖

src 是我们需要开发的目录,包含的几个目录及文件:

​ assets:放置图片

​ components:放置组件文件

​ App.vue:项目入口文件(可以将组件写在此处,而不使用 components 目录)

​ main.js:项目的核心文件

static 是静态资源目录,如图片、字体等

.xxxx 都是配置文件,包括语法配置、git配置等

index.html 是首页入口文件

package.json 是项目配置文件

README.md 项目的说明文档

package.json 中的 dependencies 是指定了项目运行所依赖的模块

package.json 中的 devDependencies 是指定了项目开发所需要的模块

3. 个人总结

​ 以上的这些问题与收获都是我在第一次vue项目中遇到的,本人将这些较为直观的问题进行了简单的总结,还有一些其他的问题与收获不便于描述,还未列出。但通过这一次的实践还是对我有很大的帮助,如果在以后的开发实践中再遇到这些类似的问题就可以轻易的解决了。而那些还未遇到的问题我相信在以后的实践中也都会依次解决掉。在项目开发的过程中,最重要的就是个人经验的总结与感悟,这些都是每一个项目带给我们的最大的收获。

初次完结撒花!!!

最后附上项目git地址 vueproject

VUEJS项目实践十之Uncaught ReferenceError: Vue is not defined external “Vue“?548a:1 一、问题背景: 嫌弃vue打包文件太大了,几个页面竟达十几M,优化打包文件的时候,出现了这个问题 Uncaught ReferenceError: Vue is not defined at eval (external “Vue”?548a:1) 二、解决办法 经过周密检查和验证,得出结论, 引入文件的地方放错啦,放的太后面了 错误的放置方式 <!DOCTYPE html> <html> <head> <meta charset="utf-8"&gt 阅读详情

相关推荐

Vue的项目总结及流程

Vue的项目总结及流程

vue项目最佳实践

使用vue一年多了,做了一个javaee的项目(全栈,前端使用的mvvm框架vue),三个移动端项目,其中两个钉钉子应用(钉钉的坑很多,心累),一个微信的(ing)。自己也慢慢摸索出一些项目中的最佳实践,整理了一下,做个记录一起交流。如果你在阅读过程中,觉得我某些地方做的不对或者有更好的方法时,欢迎交流~ 项目结构 清晰的目录结构不仅可以展现一个团队的水平,而...

weixin_30793643的博客 1316

Vue全家桶实践项目总结(推荐)

本篇文章主要介绍了Vue全家桶实践项目总结(推荐),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

vue 项目心得总结

项目使用 vue ,组件库使用 Element,模拟数据使用 Easy Mock 。 项目线上网址: 本人对于 vue 、Element 以及 Easy Mock 涉猎不深,不足之处请多多指教! 1、vue 项目目录结构详解       安装好 vue.js 后,生成的目录众多,在此对其进行目录解析       build 文件是项目构建 webpack 相关代码       conf...

yuelinana的博客 1万+

Scipy优化踩坑实录:trust-constr和SLSQP约束定义到底差在哪?

本文深入解析了Scipy优化模块中trust-constr和SLSQP两种方法在约束定义上的差异。通过对比面向对象的trust-constr和字典式定义的SLSQP,揭示了它们各自的优势与适用场景,帮助开发者在有约束优化问题中选择合适的算法,提升计算效率与准确性。

weixin_42573113的博客 270

ROS2学习笔记(二)-- 多机通讯原理简介及配置方法

简单介绍ROS2多机通信原理以及配置注意事项

aibingjin的博客 1万+

Vue开发工具vuejs-devtools超级详细安装教程以及常见问题解决

这绝对是最详细的Vue开发工具vuejs-devtools安装教程,相信你只需要5分钟即可解决所有问题 所需的所有文件,链接:https://pan.baidu.com/s/19GWDS_7GodIdFBUO0eTDAg 提取码:2yvc 一、vue.js插件下载 下载地址:vue.js插件下载; 点击进入Vue官网即可下载,共有两种版本的插件(开发版本:vue.js,生产版本:vue.main.js),建议使用开发版本。开发版本有更多的错误信息提示和调试,文件较大,生产办文件小但是很多提示不全,解决开发

goog_man的博客 6万+

Robocup3d

一、 比赛介绍 RoboCup 仿真比赛是一个能为多智能体系统和模拟智能进行研究、教育的工具。比赛是在一个标准的计算机环境中进行的,提供了一个完全分布式控制、实时异步多智能体环境。通过这个平台,可以测试各种理论、算法和Agent体系结构。在实时异步、有噪声的对抗环境中,研究多智能体的合作对抗问题。当然,仿真组的比赛使用的机器人并非是真的机器人。一个机器人是一个Agent, 它拥有自己的大脑,

zhanghe2775115的专栏 7264

探索Vue.js的无限可能 —— vuejs-challenges

挑战自我,共同成长,Vue.js挑战等你来战!

2401_83063795的博客 2841

保姆级教程:在Windows 10上为QT5.15.2配置Android开发环境(含SDK/NDK/JDK避坑指南)

本文提供了一份详细的Windows 10环境下为QT5.15.2配置Android开发环境的保姆级教程,涵盖SDK、NDK、JDK的安装与配置,以及常见问题的避坑指南。通过优化安装流程、解决Gradle下载慢等痛点,帮助开发者快速搭建稳定的编译环境,并提供了模拟器配置和调试技巧,确保开发效率。

weixin_30919571的博客 526

实战神器指标解析 篇四:主力吸筹指标及其分析和使用说明

主力可能会进行多次吸筹,因此需要根据黄色趋势线来判断是否有转强的变化。一旦出现转强的迹象,这通常意味着吸筹已经接近尾声,即将进入拉升前期。此时可以介入进行建仓。该股票指标通过分析价格变动的方式,能够精确跟踪并标识主力的吸筹行为。当底部出现多根洋红色柱子时,这通常表示出现了主力吸筹的指示。这段代码主要用于分析股票的底部吸筹情况、趋势和涨跌情况。

生活在别处 6217

推荐:Vue.js 官方文档日语版项目 - vuejs/jp.vuejs.org

推荐:Vue.js 官方文档日语版项目 - vuejs/jp.vuejs.org 在这个飞速发展的前端世界里,拥有清晰、详尽的文档是至关重要的。Vue.js,作为一款轻量级但功能强大的渐进式框架,其官方文档一直是开发者的重要学习资源。现在,对于日语使用者来说,有一个绝佳的机会,那就是参与并使用由社区维护的 vuejs/jp.vuejs.org 项目,它提供了 Vue.js 2.x 版本的日语文档。...

gitblog_00009的博客 1154

笔试题-2023-乐鑫-数字IC设计【纯净题目版】

笔试题-2023-乐鑫-数字IC设计【纯净题目版】

w0shishabi的博客 1777

探索前端新纪元:Vue.js与Rails的完美碰撞 —— vuejs-rails开源项目推荐

探索前端新纪元:Vue.js与Rails的完美碰撞 —— vuejs-rails开源项目推荐 随着Web开发的日益复杂,前端框架的选择显得尤为重要。今天,我们要向您推荐的是一个将现代前端神器Vue.js与成熟的Ruby on Rails框架紧密结合的开源项目——vuejs-rails。 项目介绍 vuejs-rails 是一款专为 Rails 3.1 及更高版本设计的资产管线 gem,它使得在Ra...

gitblog_00568的博客 1467

基于DWA算法的机器人动态避障技术实现及matlab代码

DWA算法是一种基于轨迹的运动规划算法,其核心思想是:在机器人当前位置及速度的基础上,结合机器人感知到的环境信息,生成一组合法的速度指令,然后从这组速度指令中选取代价最小的速度指令作为机器人的下一步操作。下面,我们将通过一个实例来演示基于DWA算法的机器人动态避障技术实现。假设机器人在一个宽敞的场地内行驶,但场地内有一些固定障碍物和移动障碍物,机器人需要避开这些障碍物,并在场地内自由移动。本文给出了一种基于DWA算法的机器人动态避障技术实现及相应的matlab代码,读者可以根据自身需求进行修改和调整。

uote_e的博客 1002

Spring-AI 第 17 章 - 飞书机器人接入详解

✅ Stream 长连接(官方 SDK)✅ AI 对话(支持工具调用)✅ 消息接收与回复✅ 天气查询✅ 数据库查询✅ 数学计算✅ 事件去重Stream 长连接模式:使用官方 SDK 建立 WebSocket 长连接,服务器主动连接飞书,无需公网 IP消息处理流程:接收消息 → 解析内容 → AI 处理 → 回复用户AI 工具调用:接入 FunctionTools,支持天气、计算、日期、数据库查询等多种工具。

AppBlog.CN全栈架构 210

VueJS Tree 项目常见问题解决方案

VueJS Tree 是一个高度可定制且性能极佳的 Vue 树组件。该项目的主要编程语言是 JavaScript,基于 Vue.js 框架开发。它允许开发者轻松地在网页中嵌入树形结构,支持多层级嵌套、自定义样式和行为等功能。 ## 新手使用注意事项及解决方案 ### 1. 安装依赖时版本不兼容问题 **问题描述:** 新手在安装 VueJS Tree 时,可能会遇到依赖包版本不兼容的问题...

gitblog_00454的博客 1204

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

JSDoc-VueJS 开源项目教程

JSDoc-VueJS 开源项目教程 项目介绍 JSDoc-VueJS 是一个开源项目,旨在为 Vue.js 组件生成文档。通过结合 JSDoc 和 Vue.js,开发者可以为他们的 Vue 组件编写详细的文档,从而提高代码的可维护性和可读性。该项目支持 Vue 2 和 Vue 3,并且易于集成到现有的 Vue 项目中。 项目快速启动 安装 首先,你需要在你的项目中安装 JSDoc 和 JSDoc...

gitblog_00689的博客 486

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

JSDoc-VueJS 项目常见问题解决方案

JSDoc-VueJS 项目常见问题解决方案 1. 项目基础介绍和主要编程语言 JSDoc-VueJS 是一个开源项目,旨在为 Vue.js 文件提供 JSDoc 文档支持。该项目允许开发者使用 JSDoc 标签来注释 Vue 组件的 props、data、computed 和 methods,从而生成相应的文档。主要编程语言为 JavaScript,同时使用了一些 Node.js 的特性来构建其...

gitblog_01197的博客 550

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

Flask-VueJS-Survey 项目教程

Flask-VueJS-Survey 项目教程 项目介绍 Flask-VueJS-Survey 是一个结合了 Python 的 Flask 微型 Web 框架和 Vue.js JavaScript 框架的全栈调查应用程序。该项目旨在通过一个教程博客系列展示如何构建一个完整的单页面应用(SPA),其中 Vue.js 用于构建交互式的前端界面,而 Flask 则用于开发一个 RESTful API 来...

gitblog_00451的博客 1052

VueJS WebPack separating javascript from vue

VueJS 与 Webpack:将 JavaScript 从 Vue 文件中分离

suiusoar 1350

【亲测免费】 Vue开发工具vuejs-devtools安装教程及常见问题解决

Vue开发工具vuejs-devtools安装教程及常见问题解决 【下载地址】Vue开发工具vuejs-devtools安装教程及常见问题解决 Vue开发工具vuejs-devtools安装教程及常见问题解决本文详细介绍了如何安装Vue开发工具vuejs-devtools,并提供了常见问题的解决方法 ...

gitblog_06590的博客 1168

Flask-VueJS 项目教程

Flask-VueJS 项目教程 1. 项目的目录结构及介绍 flask-vuejs-survey/ ├── backend/ │ ├── app/ │ │ ├── __init__.py │ │ ├── models.py │ │ ├── routes.py │ │ └── ... │ ├── config.py │ ├── requirements....

gitblog_00957的博客 1100

《你可能不知道的Vuejs》项目常见问题解决方案

《你可能不知道的Vuejs》项目常见问题解决方案 一、项目基础介绍 《你可能不知道的Vuejs》是一个开源项目,主要包含了一系列关于Vue.js的学习文章和项目实战经验。该项目旨在帮助初学者更好地理解和掌握Vue.js框架,从基础知识到高级应用,以及结合Webpack和ES6语法进行开发。项目主要使用JavaScript和Vue.js编程语言编写。 二、新手常见问题及解决步骤 问题一:如何开始使用...

gitblog_00930的博客 497

【亲测免费】 Vue.js 日志记录器(vuejs-logger)实用教程

Vue.js 日志记录器(vuejs-logger)实用教程 项目介绍 vuejs-logger 是一个专为 Vue.js 应用设计的日志记录库,兼容 Vue2。它提供了一个可定制的日志功能,允许开发人员根据设定的日志级别来筛选显示的信息。此库的特点包括彩色的控制台消息显示,对于传递给日志器的(可能是响应式的)属性自动执行 JSON.stringify() 处理,以及展示不同严重性的日志消息能力,...

gitblog_00413的博客 1861

Require-VueJS 项目常见问题解决方案

Require-VueJS 项目常见问题解决方案 项目基础介绍 Require-VueJS 是一个开源项目,旨在提供一个 RequireJS 插件,用于异步和动态加载并解析 Vue 单文件组件。该项目允许开发者在不进行构建过程的情况下,实时集成 Vue 组件。主要编程语言为 JavaScript。 新手常见问题及解决方案 问题一:如何安装和配置 Require-VueJS 问题描述: 新手在使用该...

gitblog_00341的博客 311
上一篇: Linux常用命令及文件属性
下一篇: D3.js知识总结
一匹小羊驼
博客等级 码龄6年 40粉丝 26原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值