【文件增量备份系统】前端项目构建

文章目录

  • 创建项目
    • 安装项目依赖
    • 引入element plus组件
      • 下载组件
      • 在main.js中使用组件
      • 测试
    • 整合路由router
      • 下载组件
      • 创建路由管理器`index.js`
      • 使用路由
      • App.vue上面使用 <router-view />
      • 测试
    • 整合axios
      • 下载组件
      • 工具类`axiosRequest.js`
      • 工具类使用

创建项目

dam@wangrunqindeMBP dev % yarn create vite increment-backup-client --template vue
yarn create v1.22.21
[1/4] 🔍  Resolving packages...
[2/4] 🚚  Fetching packages...
[3/4] 🔗  Linking dependencies...
[4/4] 🔨  Building fresh packages...
success Installed "create-vite@5.1.0" with binaries:- create-vite- cva
[##] 2/2
Scaffolding project in /Users/dam/Projects/increment-backup/dev/increment-backup-client...Done. Now run:cd increment-backup-clientyarnyarn dev✨  Done in 1.76s.

安装项目依赖

dam@wangrunqindeMBP increment-backup-client % sudo npm install

引入element plus组件

下载组件

yarn add element-plus

在这里插入图片描述

在main.js中使用组件

import { createApp } from 'vue'
import ElementPlus from 'element-plus'
import 'element-plus/dist/index.css'
import App from './App.vue'const app = createApp(App)app.use(ElementPlus)
app.mount('#app')

测试

在这里插入图片描述

组件使用成功

在这里插入图片描述

整合路由router

下载组件

sudo yarn add vue-router@4.1.6

创建路由管理器index.js

// 定义一些路由
import Index from "../views/index.vue";const routes = [{ path: '/', component: Index }
]export default routes;

使用路由

import { createApp } from 'vue'
import ElementPlus from 'element-plus'
import 'element-plus/dist/index.css'
import App from './App.vue'import routes from './router/index.js'
import * as VueRouter from 'vue-router';const app = createApp(App)const router = VueRouter.createRouter({// 内部提供了 history 模式的实现。为了简单起见,我们在这里使用 hash 模式。history: VueRouter.createWebHistory(),routes, // `routes: routes` 的缩写
})app.use(router);
app.use(ElementPlus)
app.mount('#app')

App.vue上面使用

<script>
export default {name: 'App'
}
</script><template><div id="app"><router-view /></div>
</template><style scoped>
.logo {height: 6em;padding: 1.5em;will-change: filter;transition: filter 300ms;
}
.logo:hover {filter: drop-shadow(0 0 2em #646cffaa);
}
.logo.vue:hover {filter: drop-shadow(0 0 2em #42b883aa);
}
</style>

测试

引入成功

在这里插入图片描述

整合axios

下载组件

在这里插入图片描述

"axios": "^0.27.2"

工具类axiosRequest.js

import axios from 'axios'
import {ElMessage} from "element-plus";//获取配置文件 .env.development 的数据
const BASE_URL = "http://localhost:8899";
const REQUEST_TIMEOUT = 5000;// create an axios instance
const service = axios.create({baseURL: BASE_URL, // url = base url + request url// withCredentials: true, // send cookies when cross-domain requeststimeout: REQUEST_TIMEOUT // request timeout
})// 请求拦截器
service.interceptors.request.use(config => {return config},error => {console.log(error)return Promise.reject(error)}
)// 相应拦截器
service.interceptors.response.use(response => {const res = response.data;if (res.code) {console.log("res:" + JSON.stringify(res));if (res.code !== '0') {ElMessage({message: res.message || '请求出错了',type: 'error',duration: 2 * 1000})return Promise.reject(new Error(res.message || '请求出错了'))} else {// return resreturn Promise.resolve(res)}}else {return Promise.reject(new Error(res.message || '请求出错了'))}},error => {// alert("error:" + JSON.stringify(error))// console.log('err' + error)ElMessage({message: error.message,type: 'error',duration: 2 * 1000})return Promise.reject(error)}
)export default service
export {BASE_URL}

工具类使用

import request from '../utils/axiosRequest.js'const apiName = '/source'export default {list(data) {return request({url: `${apiName}/list`,method: "post",data: data})}}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/453665.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2023年06月CCF-GESP编程能力等级认证Python编程二级真题解析

Python等级认证GESP(1~6级)全部真题・点这里 一、单选题(共15题,共30分) 第1题 高级语言编写的程序需要经过以下()操作,可以生成在计算机上运行的可执行代码。 A:编辑 B:保存 C:调试 D:编译 答案:D 第2题 能够实现下面流程图功能的伪代码是( )。 A:if …

前端JavaScript篇之数组有哪些原生方法?常见的位运算符有哪些?为什么函数的 arguments 参数是类数组而不是数组?如何遍历类数组?

目录 数组有哪些原生方法&#xff1f;参考案例 常见的位运算符有哪些&#xff1f;总结 为什么函数的 arguments 参数是类数组而不是数组&#xff1f;如何遍历类数组? 数组有哪些原生方法&#xff1f; JavaScript中数组有许多原生方法用于执行各种操作。这些方法可以分为以下几…

Hadoop-生产调优

第1章 HDFS-核心参数 1.1 NameNode内存生产配置 1&#xff09;NameNode 内存计算 每个文件块大概占用 150 byte&#xff0c;一台服务器 128G 内存为例&#xff0c;能存储多少文件块呢&#xff1f; 128 * 1024 * 1024 * 1024 / 150byte ≈ 9.1 亿G MB KB Byte 2&#xff09…

[开源]GPT Boss – 用图形化的方式部署您的私人GPT镜像网站

在这个以数据和智能为核心的时代&#xff0c;掌握最新的技术趋势是每个企业和个人都需要做到的。这就是GPT Boss存在的意义&#xff1a;一个基于OpenAI技术的一站式GPT应用解决方案。 自2022年起&#xff0c;GPT Boss团队便投身于人工智能领域&#xff0c;将OpenAI的GPT模型带给…

重写Sylar基于协程的服务器(6、HOOK模块的设计)

重写Sylar基于协程的服务器&#xff08;6、HOOK模块的设计&#xff09; 重写Sylar基于协程的服务器系列&#xff1a; 重写Sylar基于协程的服务器&#xff08;0、搭建开发环境以及项目框架 || 下载编译简化版Sylar&#xff09; 重写Sylar基于协程的服务器&#xff08;1、日志模…

034 多维数组

二维数组理解图例 示例 int[][][] nums new int[2][2][2]; Random random new Random(); for (int[][] num : nums) {for (int[] ints : num) {for (int i 0; i < ints.length; i) {// 生成100以内的随机数ints[i] random.nextInt(100);}} } for (int[][] num : nums)…

Pycharm中以chrome打开HTML文件报错: Windows找不到文件‘Chrome‘

随笔记录 目录 1. 问题描述 2. 定位问题 3. 解决方法 3.1 获取Chrome 安装路径 3.2 修改Pycharm 中Chrome的配置 4. 校验结果 1. 问题描述 Pycharm中以chrome打开HTML文件报错&#xff1a;Windows 找不到文件chrome如图所示&#xff1a; 2. 定位问题 因为Pycharm中未设…

sqli.labs靶场(41-53关)

41、第四十一关 -1 union select 1,2,3-- -1 union select 1,database(),(select group_concat(table_name) from information_schema.tables where table_schemadatabase()) -- -1 union select 1,2,(select group_concat(column_name) from information_schema.columns wher…

安泰功率放大器的技术指标有什么

功率放大器是一种电子设备&#xff0c;用于将输入信号的功率增加到更高的水平。以下是功率放大器的一些常见技术指标&#xff1a; 增益&#xff1a;增益是功率放大器将输入信号放大的程度。它通常以分贝&#xff08;dB&#xff09;为单位来表示&#xff0c;例如20dB。增益值越高…

Failed at the chromedriver@2.27.2 install script.

目录 【错误描述】Failed at the chromedriver2.27.2 install script. npm install报的错误 【解决方法】 删除node_modules文件夹npm install chromedriver --chromedriver_cdnurlhttp://cdn.npm.taobao.org/dist/chromedrivernpm install 【未解决】 下载该zip包运行这个&…

Fink CDC数据同步(五)Kafka数据同步Hive

6、Kafka同步到Hive 6.1 建映射表 通过flink sql client 建Kafka topic的映射表 CREATE TABLE kafka_user_topic(id int,name string,birth string,gender string ) WITH (connector kafka,topic flink-cdc-user,properties.bootstrap.servers 192.168.0.4:6668…

何时以及如何选择制动电阻

制动电阻的选择是优化变频器应用的关键因素 制动电阻器在变频器中是如何工作的&#xff1f; 制动电阻器在 VFD 应用中的工作原理是将电机减速到驱动器设定的精确速度。它们对于电机的快速减速特别有用。制动电阻还可以将任何多余的能量馈入 VFD&#xff0c;以提升直流母线上的…