首页 > 其他分享 >酒店管理系统

酒店管理系统

时间:2024-09-15 08:55:05浏览次数:13  
标签:axios vue 管理系统 align element 酒店 flex login

https://www.bilibili.com/video/BV1MR4y1H7qs?p=1&vd_source=e9350dcb8f8ce540f675f37bddfce935

ide:vs code

1.创建vue工程

    cmd:vue create hotel-manager

2.选择Manually select features

 3.按照下图选择插件

 4.选择n

 5.选择第一个saas/scss

 6.选择第一个

 7.选择第一个

 8.选择第一个

 9.选择y,并给刚才的配置起个名字:bing-cli-vue3

 10.回车

 安装完成

11.进入项目

 13.安装element ui,选择的是vue3的版本

  https://element-plus.org/zh-CN/component/overview

  命令:$ npm install element-plus --save

 14.安装axios

 15.启动项目:npm run serve

 16.删除创建时自带的一些文件

  删除:components目录

      HelloWorld.vue

  删除:view目录

    全部删除

  router:

    删除一些配置

 app.vue清除多余配置

以上是配置完成

17.写一个首页

         安装代码补全插件:Vetur,打开VS Code,按下Ctrl + Shift + X打开扩展视图,搜索Vetur并安装。

  在view里面创建:index.vue

  输入vu,选择<vue> wiht default.vue

18.在Index.vue里面增加:

  template里面增加:Index

  在export default:增加name:'Index'

 

 19.定义路由信息和定义路由器对象

  router---index.js

     如果遇到报错:

   请在vue.config.js中添加 lintOnSave:false并重启vue项目

  

 下面就是首页运行的结果

  

 20.创建登录页login.vue

     1>在views里面创建Login.vue

   2.添加路由信息

 

地址栏:http://192.168.0.104:8080/#/login进行验证

 21.路由在跳转时,在页面上部增加一个跳转条

  1>安装跳转条

  npm install --save nprogress

  2>安装完成以后,需要在路由里面配置一下导航前置守卫和后置守卫

  

 结果展示:login上面的浅蓝色的线就是跳转条

 22.更换主题栏的图标

在public/favicon.ico替换这个文件即可,也可以用png的文件直接修改png为ico即可

可以去这个网站找图标https://www.iconfont.cn/

 23.更改网页的抬头

 

 package.json的name值

 以上是三者的对应关系,可以采取写死的方法,如下:

 

 

 效果如下:

 24.目录说明

  assets:存放静态资源

  components:存放组件

  routes:存放路由信息

  store:存放全局状态管理

  views:存放视图(页面)

25.新建目录:

  utils:存放工具包

  api:存放所有请求的函数

  config:与所有的配置相关

 26.在app.vue写一下样式

 27.去login.vue文件修改,增加红色部分

 效果图如下:

 也可以采用渐变色,代码如下

 效果图:

 这个可以根据自己的喜好进行调整

 28.在login中间画一个窗体

 效果图:

 29.在登录框上面加一个标题

  1>

 2>增加自定义字体,在assets里面创建目录font

  把华康少女字体完整版.ttf放到这个文件夹内

 3>在全局注册字体,在app.vue文件中进行

 4.在login.vue中使用字体

 5.效果图

 30.注册element-plus

   import ElementPlus from 'element-plus'

   import 'element-plus/dist/index.css'

在main.js里面加入这2句话,还有最后加入到对象中

 

 31.Login.vue代码

<template>
   <div class="container">
   <div class="login">
            <div class="item">
                    <h2>酒店管理系统</h2>
            </div>
            <div class="item">
                <span>账号:</span>
                <div>
                    <el-input size="mini" type="text" v-model="loginId"  placeholder="请输入账号" />
                </div>
            </div>
            <div class="item">
                <span>密码:</span>
                <div>
                <el-input size="mini" type="password" v-model="loginPwd"  placeholder="请输入密码" />
                </div>
            </div>
            <div class="item">
                <span>记住我:</span>
                <!--//复选框checkbox-->
                <div>
                <el-checkbox  v-model="ckMe"></el-checkbox>
                </div>
            </div>
            <div class="item">
               <div class="button-login">
                <el-button size="mini"  type="primary">登录</el-button>
               </div>
               <div class="button-cancle">
                <el-button size="mini">取消</el-button>
               </div>
                
              
            </div>

   </div>
   </div>           
    </template>
    
    <script>
    import {reactive,toRefs} from 'vue'
    export default {
    name:'Login', //第一步
    setup(){
        //定义登录数据
        let loginData=reactive(
            {
                loginId:'',
                loginPwd:'',
                ckMe:false  //记住我的复选框,不打对号
            }
        )
        //返回数据
        return{
            ...toRefs(loginData)//这个括号里面没有写数据,那么页面的input标签输入不进去
        }
    },
    };
    
    </script>
    
     <style scoped lang="scss">
     .container{
        width: 100vw;
        height: 100vh;
        //background: lightblue;
        background: linear-gradient(to bottom,rgb(49, 146, 211),rgb(212, 224, 228));
        display: flex;
        justify-content: center;
        align-items: center;
        .login{
            width: 400px;
           // height:225px;高度可以不要
            border: 1px solid #eee;//边框
            border-radius: 20px;//增加圆角
            color: #eee;
            font-family: 'bing';//在这里使用字体
            padding: 10px;
            .item{
                font-size: 14px;
                display: flex;
                align-content: center;
                margin: 10px;
            h2{
                flex: 1;//抢占剩余 宽度,下面的text-align才会生效
                text-align: center;
            }
            span{
                    width:47px;
                    text-align: right;
                    margin-right: 15px;
              
            }
            div{
                flex: 1;
            }
            .button-login{//对按钮的样式要使用点
                    
                display: flex;
               // justify-content: center; /* 水平居中 */
               margin-left: 70px;
            }
            .button-cancle{             
                display: flex;
                //justify-content: center; /* 水平居中 */
               // align-items: right;; /* 垂直居中 */
               margin-left:190px;
              
                }
            }
      
        }
     }
    
    </style>

 

32.导入axios

  1>前置步骤

  文档:https://www.kancloud.cn/yunye/axios 

  安装命令:npm install axios

       导入命令:在request.js文件中添加

  import axios from 'axios'

  2>定义全局对象,下面是初始化一个axios对象

var instance = axios.create({
  baseURL: 'https://some-domain.com/api/',
  timeout: 1000,
  headers: {'X-Custom-Header': 'foobar'}
});

   3>添加请求拦截,添加响应的拦截器,这个代码不用修改,直接应用

 // 添加请求拦截器
 instance.interceptors.request.use(function (config) {
  // 在发送请求之前做些什么
  return config;
}, function (error) {
  // 对请求错误做些什么
  return Promise.reject(error);
});

// 添加响应拦截器
instance.interceptors.response.use(function (response) {
  // 对响应数据做点什么
  return response;
}, function (error) {
  // 对响应错误做点什么
  return Promise.reject(error);
});

 

标签:axios,vue,管理系统,align,element,酒店,flex,login
From: https://www.cnblogs.com/miwaiwai/p/18407572

相关文章

  • SpringBoot+Neo4j+Vue+Es集成ES全文检索、Neo4J知识图谱、Activiti工作流的知识库管理
     在数字化高度普及的时代,企事业机关单位在日常工作中会产生大量的文档,例如医院制度汇编,企业知识共享库等。针对这些文档性的东西,手工纸质化去管理是非常消耗工作量的,并且纸质化查阅难,易损耗,所以电子化管理显得尤为重要。【springboot+elasticsearch+neo4j+vue+activiti】实现......
  • 超详细全面的宿舍管理系统课程设计(详细分析及源码分享)
    第一章系统概述    宿舍管理查询软件是一个教育单位不可缺少的部分它的内容对于学校的决策者和管理者来说都至关重要所以宿舍管理查询软件应该能够为用户提供充足的信息和快捷的查询手段。以前各个学校的学生宿舍管理基本上都是靠手工进行,但随着各个学校的规模增大,有关......
  • python+flask计算机毕业设计民宿管理系统(程序+开题+论文)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容研究背景随着旅游业的蓬勃发展和消费者对个性化住宿体验需求的日益增长,民宿作为一种新兴的住宿方式,在全球范围内迅速崛起。传统酒店已难以满足旅行......
  • 某群管理系统存在SQL注入漏洞
    有些事情不是看到希望才去坚持,而是坚持了才会看到希望。漏洞实战访问url:http://xxx/login.aspx登录界面如下:输入万能密码:用户名:admin'or'1'='1密码输入:123456或任意成功登录:文笔生疏,措辞浅薄,望各位大佬不吝赐教,万分感谢。免责声明:由于传播或利用此文所提......
  • java+vue计算机毕设多媒体素材管理系统【源码+开题+论文+程序】
    本系统(程序+源码)带文档lw万字以上文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景随着信息技术的飞速发展,多媒体内容已成为信息传播与交流的核心载体。从新闻报道到教育培训,从娱乐休闲到企业宣传,多媒体素材如视频、音频、图像等的应......
  • java计算机毕业设计交通违章管理系统(开题+程序+论文)
    本系统(程序+源码)带文档lw万字以上 文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景随着城市化进程的加速和机动车保有量的激增,交通违章现象日益频繁,给道路交通安全带来了严峻挑战。传统的人工处理交通违章方式不仅效率低下,且难以实现......
  • Springboot防疫物资管理系统yx5k5--(程序+源码+数据库+调试部署+开发环境)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容一、研究背景与意义随着全球公共卫生事件的频发,防疫物资的有效管理成为保障社会安全与稳定的关键环节。传统的手工管理模式已难以满足大规模、高效......
  • 基于python+flask框架的农民工综合信息管理系统(开题+程序+论文) 计算机毕设
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容研究背景随着我国城市化进程的加速推进,农民工群体作为城市建设的重要力量,其规模日益庞大,对社会经济发展起到了不可替代的作用。然而,农民工的流动性......
  • 基于python+flask框架的社区公共卫生疫情防控管理系统(开题+程序+论文) 计算机毕设
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容研究背景随着全球公共卫生事件的频发,特别是新冠疫情的爆发,社区作为疫情防控的第一线,其公共卫生管理能力直接关乎到疫情控制的成效与居民的生命安全......
  • 【万字文档+PPT+源码】基于springboot+vue电影院管理系统-可用于毕设-课程设计-练手学
    博主简介:......