Java学习Day20

news2024/9/25 7:17:20

Vue学习

nodejs的安装与环境配置

1.直接去官网下载合适版本的nodejs( https://nodejs.org/zh-cn/download/prebuilt-installer)

2.解压下载的安装包,将文件路径配置到系统变量的path中,然后确认后退出。可以使用终端来查看安装的nodejs版本。使用win+R快捷键进入cmd终端,输入npm -v查看

3.使用npm config set registry https://mirrors.huaweicloud.com/repository/npm/ 选择华为的镜像源。配置完可以使用npm config get registry命令查看选择的镜像源。

vue项目的创建与配置

1.创建一个vite项目,先准备好一个文件夹用来存放你的Vue项目,在这个文件夹处点击导航栏输入cmd,使用npm create vite@latest命令创建项目。先在project name后写上项目的名称,回车后用上下键选中Vue,最后选择项目编写语言,回车项目就创建好了。

2.打开vscode,选择打开文件夹,将刚才创建的项目文件选中,打开后就有了基本的Vue结构。 

3.为了正常使用Vue开发前端页面,需要运行下列三个安装命令,

 npm install element-plus --save

npm install vue-router

npm install axios

4.在项目中进行简单的的配置,新建一些文件夹和一些js文件,具体配置如下:

(1)viteconfig.js这个 Vite 配置文件为 Vue.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/, ''),
      },
    }
  }
})

 (2)api/index 封装了一个简单的 HTTP GET 请求接口。

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

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

(3)util/http.js定义了一个封装了 axios 请求的函数,通常用于处理 HTTP 请求和响应。它主要负责在每次请求时添加 Authorization 头部,并处理请求的成功和失败情况。

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);
        });
}

(4)main.jsVue 3 项目的启动文件,完成了以下几个步骤:创建 Vue 应用实例。配置路由插件和 UI 组件库。将 Vue 应用挂载到 DOM 上。

import { createApp } from 'vue'
import App from './App.vue'
import router from './router'
import ElementPlus from 'element-plus'
import 'element-plus/dist/index.css'

createApp(App).use(router).use(ElementPlus).mount('#app')

(5)router/index.js设置了一个 Vue Router 实例,用于定义应用的路由配置。它使用 hash 模式来处理路由,并定义了一个路由规则,将 /user 路径映射到 ../views/user.vue 组件。

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

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

export default router;

(6)使用Element组件(https://element-plus.org/zh-CN/component/overview.html)来开发Vue项目的页面组件。

在vite.config.js 中添加(在4(1)中代码已添加)下两行代码。

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

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

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

相关文章

智能合约的未来:解析Web3在智能合约领域的创新

随着区块链技术的不断发展,智能合约已成为Web3生态系统中的核心组成部分。智能合约通过在区块链上自动执行合约条款,推动了去中心化应用(DApp)的广泛应用。它们的核心优势在于去中心化、透明和不可篡改,这使得合同执行…

uniapp切换同一个子组件时,钩子函数只进了一次

给子组件添加不同的 “key” 值,当 key 值改变时,Vue 会认为这是一个不同的组件,并重新创建它 props: ["L1Id"],// 方式1: 使用keycomputed: {// 切换子组件时,发现created、mounted等钩子函数只会进一次,或者用 keykey(){this.ref…

RAG私域问答场景超级详细方案(第一期方案)[1]:工业级别构建私域问答(知识处理、知识召回排序、搜索问答模块)

RAG私域问答场景整体夏详细方案(第一期方案):工业级别构建私域问答(知识处理、知识召回排序、搜索问答模块) 大模型性能的跳阶式增长给文本摘要、信息检索、信息抽取、语义问答等自然语言处理任务带来了卓越的性能提升。同时,LangChain 作为一种基于 LLM 的框架,能够快速…

【autoware】安装ros2 密匙gpg报错,443连接失败

443连接问题解决方法: 访问该网站 https://ping.chinaz.com 输入raw.githubusercontent.com可以得到解析出来的IP sudo vim /etc/hosts

Unity射击游戏开发教程:(31)制造一定追踪行为的敌人

在本文中,我们将介绍如何在两种敌人行为之间切换。本文是前两篇文章的延续,分别介绍了敌人躲避玩家射击以及敌人不断旋转并向玩家射击的情况。我只是介绍如何在这两种行为之间进行转换。 这种新的敌人行为的目标: 当不开火时,敌人可以躲避玩家的射击。射击时,敌人无法躲避…

lvs实战项目-dr模式实现

一、环境准备 主机名IP地址router eth0:172.25.254.100 eth1:192.168.0.100 clienteth0:172.25.254.200lvseth1:192.168.0.50web1web2 1、client配置 [rootclient ~]# cat /etc/NetworkManager/system-connections/eth0.nmconne…

使用FFmpeg实现摄像头RTMP实时推流

在当今的数字时代,视频直播已成为连接人与人之间的重要桥梁,广泛应用于在线教育、远程会议、娱乐直播等多个领域。随着技术的不断进步,人们对于直播的实时性、稳定性和高质量需求日益增加。为了实现高效的视频直播,选择合适的工具和协议至关重要。 RTMP(Real-Time Messagi…

Kotlin OpenCV 视频分析和对象跟踪60 MIL 对象跟踪

Kotlin OpenCV 视频分析和对象跟踪60 MIL 对象跟踪 1 OpenCV 对象跟踪算法2 Kotlin 引入依赖3 OpenCV 下载4 Kotlin OpenCV MIL 对象跟踪 1 OpenCV 对象跟踪算法 算法算法特点1 BOOSTING Tracker基于 AdaBoost 算法。适合于简单的对象跟踪任务。算法较老,在复杂场景…

LLVM理论篇之编译器结构

1、概述 编译器完成源程序到目标程序的翻译工作,这是一个复杂的整体过程。从概念上讲,一个编译程序的整体过程可以分为3个阶段,每个阶段将程序的一种语言表示形式转换成另一种语言表示形式,并且各个阶段在逻辑上是紧密相连的。典…

【C++】STL | list (链表)详解及重要函数的实现

目录 前言 总代码 ListNode类框架的建立 (成员与模板) list类的框架 普通构造 与 empty_init(适合不同类型构造函数的小函数) list的迭代器 引子 operator、operator--(前置与后置) operator 与 operator! operator* 与 …

基于主从Reactor模式的高性能服务器

服务器性能 百万并发:2核2G 2M Linux云服务器,2线程100并发请求,持续1000s,达到百万连接处理且0错误 高并发HTTP服务器项目:性能与功能性测试汇总-CSDN博客(测试详细信息) 主要通信逻辑分析 初…

专利申请后,如何支付年费?

专利申请后,如何支付年费?

Vue3项目创建及相关配置

Vue是一种用于构建用户界面的JavaScript框架。它采用了一种称为MVVM(Model-View-ViewModel)的架构模式。 MVVM是一种将用户界面与业务逻辑和数据分离的设计模式。它包括三个部分: Model(模型):表示应用程序…

Windows安装Swoft框架

实现方式: 安装虚拟机,在虚拟机里用宝塔搭建环境后安装Swoft, 然后用Phpstorm SSH方式开发,用Apipost调用 websocket服务。 1、安装虚拟机,下载和安装参见 : https://blog.csdn.net/2401_84297265/article…

基于STM32的智能窗帘控制系统

目录 引言环境准备工作 硬件准备软件安装与配置系统设计 系统架构硬件连接代码实现 初始化代码控制代码应用场景 家居智能窗帘控制办公室窗帘自动调节常见问题及解决方案 常见问题解决方案结论 1. 引言 智能窗帘控制系统能够通过时间、光照强度或远程控制,实现对…

基于OBSIDIAN+Ollama+llama3.1构建个人智能助理

这里写自定义目录标题 重新定义个人智能助理:应用场景隐私保护与数据安全:构建可信赖的AI系统人工智能底座:搭建基于OLLAMA的大模型我的OLLAMA本地化部署配置不同模型的响应情况各大模型对计算机资源的要求(家庭使用为主&#xff…

38.【C语言】指针(重难点)(C)

目录: 8.const 修饰指针 *修饰普通变量 *修饰指针变量 9.指针运算 *指针或-整数 *指针-指针 *指针关系运算 8.const 修饰指针 const 全称 constant adj.不变的 *修饰普通变量 #include <stdio.h> int main() {const int num 0;num 20;printf("%d\n", num)…

高并发HTTP服务器项目:性能与功能性测试汇总

负载测试 测试环境说明 云服务器&#xff1a;2核2G 2M Linux服务端和客户端环境&#xff1a;同在上述服务器中运行测试工具&#xff1a; wrk 模拟高并发请求htop检测CPU与内存使用情况 低负载压测&#xff1a;百万请求测试&#xff0c;2线程&#xff0c;100并发&#xff0c;100…

C++ 几何算法 - 求两条直线交点

一:算法介绍 1. 首先定义两条直线方程: 2. 解方程,求出x, y坐标 3. 如果x分母的行列式等于0, 说明两条直线平行或方向相反 4. 如果x,y分母的行列式都等于0,说明两条线重叠 二:代码实现: #include <cmath> #include <iostream>class Point2D { public:doubl…

Dubbo框架实现RPC远程调用包括nacos的配置和初始化

项目背景介绍 这个技术我是直接在项目中运用并且学习的&#xff0c;所以我写笔记最优先的角度就是从项目背景出发 继上一次API网关完成了这个实现用户调用一次接口之后让接口次数增多的操作之后&#xff0c;又迎来了新的问题。 就是我们在调用接口的时候需要对用户进行校验&…