java学习笔记 VSCode

news2024/9/25 21:31:07

2.管理员身份打开cmd,切换存文件的路径

2.输入下面命令创建文件

npm create vite@latest

将项目命名为easyb选择vue--->JavaScript 

3,用管理员身份打开VSCode,打开刚刚创建的easyb

4.下载包

npm install

npm install vue-router

  npm install axios

npm install element-plus --save

5.在src文件下创建文件夹

1>在api文件夹下创建新文件index.js

定义了一个名为 API 的模块,该模块封装了 HTTP GET 请求的功能

这行代码将 API 对象导出为模块的默认导出。这意味着其他文件可以通过 import API from './module.js' 的方式导入整个 API 对象。

import http from '../util/http.js';

const API={
    get:(url)=>{return http({url:url,method:'get'})}
};
export default API;

2>在router下创建文件index.js

import {createRouter,createWebHashHistory} from  'vue-router'

const router=createRouter(
    {
    history:createWebHashHistory(),
    routes:[
        {path:'/easy',component:()=>import("../views/easy.vue"),
         children:[{path:'/stafflist',component:()=>import("../views/stafflist.vue")}]
        }
    ]
    }
);

export default router;

 Vue Router 是 Vue.js 官方的路由管理器,用于构建单页面应用中的导航和视图组件

从 vue-router 包中导入了两个函数:createRouter 和 createWebHashHistory

  • createRouter: 用于创建一个 Vue Router 实例。
  • createWebHashHistory: 用于创建一个使用浏览器 URL 的哈希部分 (#) 来记录路由状态的历史记录模式。
  • 这段代码创建了一个 Vue Router 实例,并配置了路由规则。
    • history: 设置了使用的路由历史模式为哈希模式。哈希模式意味着路由的变化不会触发浏览器的重新加载,而是通过改变 URL 中的哈希部分来实现。
    • routes: 定义了路由规则。在这个例子中,只定义了一个路由规则:
      • path: '/easy': 指定了路由的路径。
      • component: () => import('../views/easy.vue'): 指定了当访问 /easy 路径时要加载的组件。这里使用了动态导入(import()),这样可以在运行时异步加载组件,有助于提高应用的初始加载速度。
      • children: 定义了子路由规则。在这个例子中,只有一个子路由:
        • path: '/stafflist': 指定了子路由的路径。
        • component: () => import('../views/stafflist.vue'): 指定了当访问 /stafflist 路径时要加载的组件。

3>在util下创建新文件http.js

import axios from 'axios';

export default function (options) {
    //配置每次发送请求都从sessionStorage中获取名字叫token的数据,
    //添加到请求头部的Authorization属性中

    //Object.assign用于合并对象的数据
    options.headers = Object.assign(
        { Authorization: sessionStorage.getItem('token') },
        options.headers || {}
    );
    //axios()   返回一个promise对象,用于异步请求
    //options是一个对象,其中包含了许多用于配置请求的参数,
    //例如请求的url、请求方法(GET、POST等)、请求头等
    return axios(options)
        .then(({ status, data, statusText }) => {
            //该函数在请求成功并返回数据时被调用
            //status:HTTP状态码,例如200表示请求成功。
            //data:服务器返回的数据。
            // statusText:HTTP状态文本,例如"OK"表示请求成功。
            console.log(data);
            if (status == 200) {
                return data;
            } else {
                throw new Error(statusText);
            }
        })
       .catch(e=>{
            return Promise.reject(e);
            //return Promise.reject(e.message);
        });
}

发送 HTTP 请求的函数,该函数使用 Axios 库来发送请求,并在请求头中自动加入从 sessionStorage 中获取的 token 数据,同时,它还处理了请求的成功和失败情况.

6.在main.js中写

// 导入 Vue 的 createApp 函数,用于创建 Vue 应用实例
import { createApp } from 'vue';

// 导入根组件 App,它是应用的主要入口点
import App from './App.vue';

// 导入路由实例 router,这是使用 Vue Router 时创建的路由配置
import router from './router';

// 导入 Element Plus 组件库,它是一个基于 Vue 3 的组件库,提供了丰富的 UI 组件
import ElementPlus from 'element-plus';

// 导入 Element Plus 的 CSS 样式文件,这一步是为了让应用能够使用 Element Plus 提供的样式
import 'element-plus/dist/index.css';

// 创建 Vue 应用实例,并使用 router 和 ElementPlus 插件,最后将应用挂载到 DOM 中
createApp(App)
    .use(router) // 使用 Vue Router 实例
    .use(ElementPlus) // 使用 Element Plus 组件库
    .mount('#app'); // 将应用挂载到 HTML 中 id 为 'app' 的元素上

7.在App.vue中

<script setup>
// 组件的 JavaScript 逻辑写在这里
</script>

<template>
  <router-view></router-view>
</template>

<style scoped>
// 组件的样式写在这里
</style>

<router-view> 是 Vue Router 提供的一个组件,用于渲染当前活动的路由视图。当使用 Vue Router 时,每个 <router-view> 标签都会根据当前的路由来渲染对应的组件

用于显示页面结果

8.设置代理 vite.config.js

import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'

// https://vitejs.dev/config/
export default defineConfig({
  plugins: [vue()],
  server:{
    // 配置vite冷启动项目自动使用浏览器访问首页
    open:true,
    proxy: {  
      '/api': {
        target: 'http://localhost:8080',
        changeOrigin: true,
        rewrite: (path) => path.replace(/^\/api/, ''),
      },
    }
  }
})

10.设置员工列表跳转页面

<script setup>
import {ref,onMounted} from 'vue'
import easyapi from '../api'
//定义绑定数据
const tableData=ref([]);

//挂在页面是查询数据
onMounted(async function(){
    let result=await easyapi.get("/api/staff");
    tableData.value=result.data;
})
</script>

<template>
    <el-table :data="tableData" 
    style="width: 100%">
      <el-table-column prop="id" label="ID" width="180" />
      <el-table-column prop="code" label="编号" width="180"/>
      <el-table-column prop="name" label="姓名" width="180" />
      <el-table-column prop="salary" label="薪资"/>
    </el-table>
  </template>

<style></style>

最后运行结果展示

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

数据可视化入门:使用 Matplotlib、Numpy 和 SciPy 绘图

数据可视化是数据分析不可或缺的工具&#xff0c;它通过图形化手段帮助我们更直观地理解数据。Python拥有多种库来实现数据可视化&#xff0c;其中matplotlib、numpy和scipy是最常用的几个。本文将详细介绍如何使用这些库来创建各种图表和曲面。 环境搭建 在开始之前&#xf…

SPSS、Python员工满意度问卷调查激励保健理论研究:决策树、随机森林和AdaBoost|附代码数据

全文链接&#xff1a;https://tecdat.cn/?p37293 原文出处&#xff1a;拓端数据部落公众号 在深入了解公司当前的实际情况和员工内心真实想法的基础上&#xff0c;我们旨在从专业视角出发&#xff0c;为企业在组织管理方面的不足进行诊断&#xff0c;并进行全面审视。 为了…

激发创意:十大设计灵感网站推荐

在设计的世界里&#xff0c;灵感是推动创意发想和项目实现的关键因素。设计师们常常需要寻找新的灵感来源&#xff0c;以保持作品的新鲜感和创新性。幸运的是&#xff0c;互联网上有许多优秀的设计灵感网站&#xff0c;它们提供了丰富的资源和启发&#xff0c;帮助设计师们打破…

leetcode-二叉树oj题1(共三道 965,100,144)--c语言

目录 a. 二叉树的概念以及实现参照博客&#xff1a; 一、三道题的oj链接 二、每题讲解 1.单值二叉树 a. 题目&#xff1a; b. 题目所给代码 c. 思路 d. 代码&#xff1a; 2. 相同的树 a. 题目 b. 题目所给代码 c. 思路 d. 代码 3. 二叉树的前序遍历 a. 题目 b.…

软考:软件设计师 — 11.UML 建模

十一. UML 建模 UML 建模部分是下午场考试中第三个题目&#xff0c;分值 15 分。先介绍一下这类题目的考查形式。 1. 考察形式 &#xff08;1&#xff09;类图与对象图 填类名&#xff0c;方法名&#xff0c;属性名填关系填多重度 UML 中四种基本关系&#xff1a; 依赖关…

【IO模型】select、poll、epoll的区别

文章目录 五种IO模型阻塞IO非阻塞IO信号驱动IOIO复用异步IO IO复用的原理selectselect原理及缺点 pollpoll的原理及其缺点 epollepoll_createepoll_ctlepoll_waitepoll的原理水平触发和边缘触发epoll的优点 五种IO模型 I/O模型是操作系统中用于管理输入输出操作的机制。不同的…

多线程 02:线程实现,创建线程的三种方式,通过多线程下载图片案例分析异同(Thread,Runnable,Callable)

一、概述 记录时间 [2024-08-08] 前置知识&#xff1a;Java 基础篇&#xff1b;Java 面向对象 多线程 01&#xff1a;Java 多线程学习导航&#xff0c;线程简介&#xff0c;线程相关概念的整理 Java 多线程学习主要模块包括&#xff1a;线程简介&#xff1b;线程实现&#xff…

MySQL 体系架构

文章目录 一. MySQL 分支与变种1. Drizzle2. MariaDB3. Percona Server 二. MySQL的替代1. Postgre SQL2. SQLite 三. MySQL 体系架构1.连接层2 Server层&#xff08;SQL处理层&#xff09;3. 存储引擎层1&#xff09;MySQL官方存储引擎概要2&#xff09;第三方引擎3&#xff0…

【java】一维数组

目录 一维数组内存分析Java虚拟机的内存划分一维数组内存解析 一维数组知识点一维数组课后练习 一维数组内存分析 Java虚拟机的内存划分 为了提高运行效率&#xff0c;就对空间进行了不同区域的划分&#xff0c;因为每一片区域都有特定的处理数据方式和内存管理方式。 java中…

cs224w colab0笔记

1.colab0 1.1 数据集 from torch_geometric.datasets import KarateClubdataset KarateClub() print(fDataset:{dataset}:) print() print(fNumber of graphs:{len(dataset)}) print(fNumber of features:{dataset.num_features}) print(fNumber of classes:{dataset.num_cl…

机器学习面试-核心概念-问题理解

1.机器学习的思想 计算机程序随着经验的积累&#xff0c;能够实现性能的提高。对于某一类任务T及其性能度量P&#xff0c;若一个计算机程序在T上以P衡量的性能随着经验E而自我完善&#xff0c;那么就称这个计算机程序在从经验E学习。 机器学习是人工智能的一个分支&#xff0c…

VMware Workstation 与 Device/Credential Guard 的不兼容问题

&#xff08;1&#xff09;出现问题 &#xff08;2&#xff09;出现问题原因&#xff1a; 我电脑原先弄过Hyper-V&#xff0c;这玩意是微软公司开发的一款虚拟化产品&#xff0c;它是微软第一个采用类似 VMware 和 Citrix Xen 等产品中的基于 hypervisor&#xff08;虚拟机监控…

基于区块链的供应链应用开发

区块链的供应链溯源应用开发 一 、环境准备 (1)更新镜像源 apt update(2)安装(openssl、jdk、git) apt -y install openssl default-jdk git(3)配置JAVA_HOME环境变量 echo “export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64/” >> /etc/profilesource /etc…

一键编译并启动一个 ARM Linux qemu 虚拟机

需要事先自己编译 qemu-system-arm 可执行文件&#xff1b; 1&#xff0c;编译创建ARM 虚拟机 1.1 一起从头开始版 cd 进一个空文件夹&#xff0c;然后 $ vim buildup.sh $ bash buildup.sh 访问github网络没什么问题&#xff1a; 硬编码了一个路径/home/hipper/ex_vexpre…

Java对象内存布局和Synchronized锁升级(二)

目录 对象内存布局对象头实例数据对齐填充锁在内存布局中的标志位 锁升级无锁偏向锁偏向锁升级 轻量级锁重量级锁 锁消除和锁粗化锁消除锁粗化 锁升级总结 对象内存布局 在HotSpot虚拟机里&#xff0c;对象在堆内存中的存储布局可以划分为三个部分:对象头(Header)、实例数据(I…

同态加密和SEAL库的介绍(八)性能

本篇会对比三种加密方案&#xff0c;同时每种方案配置三种参数。即九种情况下的各个操作的性能差异&#xff0c;为大家选择合适的方案和合适的参数提供参考。表格中所有时长的单位均为微妙&#xff0c;即 。 当然数据量比较大&#xff0c;为了方便大家查找&#xff0c…

应用商店故障(UOS系统)

应用商店故障&#xff08;UOS系统&#xff09; 1. 安装应用商店内的应用无法下载&#xff0c;更新系统时提示依赖关系被破坏&#xff0c;怎么办&#xff1f; 问题描述 安装应用商店内的应用无法下载&#xff0c;更新系统时均提示依赖关系被破坏 解决方案 1、可先建议用户尝试修…

day 22线程间通信

一、互斥锁 1、资源&#xff1a; 资源是有限的&#xff0c;在程序运行过程中&#xff0c;一段代码、一段空间、一个变量、CPU、内存都可以看做资源 2、互斥锁&#xff1a; 是一种资源,当一个线程任务加锁,其余线程任务无法再次加锁,直到解锁后才能加锁&#xff0c;互斥…

数据机房防静电措施有哪些?安装防静电地板时记住这几点

生活中静电无处不在&#xff0c;一般情况静电不会对我们有什么影响&#xff0c;但在一些特殊场合&#xff0c;比如数据机房、配电室、消控室、电子厂房等&#xff0c;静电的危害必须要引起重视&#xff0c;因为这些场合通常有比较多的电子设备&#xff0c;电子设备中有比较多的…

priority_queue模拟实现【C++】

文章目录 全部的实现代码放在了文章末尾什么是适配器模式&#xff1f;准备工作包含头文件定义命名空间类的成员变量什么是仿函数&#xff1f;比较仿函数在priority_queue中的作用通过传入不同的仿函数可以做到大堆和小堆之间的切换通过传入不同的仿函数可以做到改变priority_qu…