黑马-Vue前端

news/2024/10/1 3:35:22

前言

HTML:负责网页的结构(标签:form表单 / table表格 / a /div/span)

CSS:负责网页的表现(样式:color/font/background/width/height)

JavaScript:负责网页的行为(交互效果)

创建一个文件夹

输入cmd

执行 code . 回车,打开VsCode

Vue

一款用于构建用户界面渐进式的JavaScript框架

Ajax:Axios

介绍:Axios对原生的Ajax进行了封装,简化书写,快速开发。

官网:https://www.axios-http.cn/

Axios

  • 引入Axios的js文件(参照官网)
<script src="https://unpkg.com/axios/dist/axios.min.js"></script>
  • 使用Axios发送请求,并获取相应结果

  • 为了方便起见,Axios已经为所有支持的请求方法提供了别名
  • 格式: axios.请求方式(url [, data [, config]])

1、局部使用Vue

1.1、快速入门

准备工作

  • 引入Vue模块
  • 创建Vue的应用实例
  • 定义元素(div),交给Vue控制

构建用户界面

  • 准备数据
  • 用插值表达式渲染

1.2、常用指令

指令:html标签上带有 v- 前缀的特殊属性,不同的指令具有不同的含义,可以使实现不同的功能

v-for

  • 作用:列表渲染,遍历容器的元素或者对象的属性
  • 语法: v-for = "(item,index) in items"
    • 参数说明
      • items 为遍历的数组
      • item 为遍历出来的元素
      • index 为索引/下标,从0开始 ;可以省略,省略index语法: v-for = "item in items"

注意:遍历的数组,必须在data中定义;要想让哪个标签循环展示多次,就在哪个标签上使用 v-for 指令。

v-bind

  • 作用:动态为HTML标签绑定属性值,如设置href, src, style样式等。
  • 语法:v-bind:属性名 = "属性值"
  • 简化: :属性名="属性值"

注意:v-bind 所绑定的数据,必须在data中定义。

v-if & v-show

  • 作用:这两类指令,都是用来控制元素的显示与隐藏的

v-on

  • 作用:为html标签绑定事件
  • 语法:
    • v-on:事件名="函数名"
    • 简写为 @事件名="函数名"

v-model

  • 作用:在表单元素上使用,双向数据绑定。可以方便的 获取设置 表单项数据

  • 语法:v-model="变量名"

注意:v-model 中绑定的变量,必须在data中定义

1.3、生命周期

  • 生命周期:指一个对象从创建到销毁的整个过程。
  • 生命周期的八个阶段:每个阶段会自动执行一个生命周期方法(钩子),让开发者有机会在特定的阶段执行自己的代码

经常用的是第四个 mounted

2、整站使用vue

2.1、Vue项目构建工具

  • 介绍:create-vue是Vue官方提供的最新的脚手架工具,用于快速生成一个工程化的Vue项目。
  • create-vue提供了如下功能:
    • 统一的目录结构
    • 本地调试
    • 热部署
    • 单元测试
    • 集成打包
  • 依赖环境: Node JS

  • npm : Node Package Manager, 是NodeJS的软件包管理器

Vue项目创建

最后输入 code . 打开VsCode

2.2、Vue项目目录结构

Vue项目启动

方式一:

打开浏览器,在浏览器地址栏访问 http://127.0.0.1:5173 就可以访问到vue项目

方式二:

2.3、Vue项目开发流程

index.html src: App.vue(根组件),main.js(入口文件)

2.3.1、App.vue

一般来说,index.html和main.js是不用改变的,编写主要在App.vue中

2.3.2、API风格

  • Vue的组件有两种不同的风格:组合式API选项式API

2.4、Element-Plus

  • Element:是饿了么团队研发的,基于 Vue3,面向设计师和开发者的组件库
  • 组件:组成网页的部件,例如 超链接、按钮、表格、图片、分页等
  • 官网:https://element-plus.org/zh-CN/#/zh-CN

快速入门

1、创建一个工程化的vue项目

2、参照官方文档,安装Element Plus组件库(在当前工程的目录下):npm install element-plus --save

3、main.j中引入Element Plus组件库(参照官方文档)

// main.ts
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')

2.4.1、常用组件

3、big-event的前端

环境准备:

  1. 创建Vue工程 npm init vue@latest
  2. 安装依赖
  • Element-Plus

    npm install element-plus --save

  • Axios

    npm install axios

  • Sass(css样式)

    npm install sass -D

  1. 目录调整
    • 删除components下面自动生成的内容
    • 新建目录api(存放接口调用js文件) 、utils(存放请求工具js文件) 、views
    • 将资料中的静态资源拷贝到assets目录下
    • 删除App.vue中自动生成的内容

开发步骤

先启动IDEA中的服务

user.js ======> Login.vue

跨域

由于浏览器的同源策略限制,向不同源(不同协议、不同域名、不同端口)发送ajax请求会失效

解决方法:配置代理

request.js中 baseURL 的值变为 '/api'

在 vite.config.js

登录

首先登录表单 先完成 绑定数据,并进行数据校验

在对登录按钮 绑定事件,并完成接口调用

3.1、客户端路由

无法在app.vue中同时进行登录和主页面显示,这就需要路由!

  • 路由,决定从起点到终点的路径的进程

  • 在前端工程中,路由指的是根据不同的访问路径,展示不同组件的内容

  • Vue Router是Vue.js的官方路由

Vue Router

  • 安装vue-router npm install vue-router@4
  • 在src/router/index.js中创建路由器,并导出

  • 在vue应用实例中使用vue-router

  • 声明router-view标签,展示组件内容

子路由

3.2、状态管理

Pinia状态管理库

Pinia是Vue的专属状态管理库,它允许你跨组件或页面共享状态

  • 安装pinia npm install pinia

  • 在vue应用实例中使用pinia

  • 在src/stores/token.js中定义store

  • 在组件中使用store

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

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

相关文章

httpsok-v1.11.0支持CDN证书自动部署

🔥httpsok-v1.11.0支持CDN证书自动部署 介绍 httpsok 是一个便捷的 HTTPS 证书自动续签工具,专为 Nginx 、OpenResty 服务器设计。已服务众多中小企业,稳定、安全、可靠。 一行命令,一分钟轻松搞定SSL证书自动续期 v1.11.0 版本新特性✅修复某些情况下无法识别主配置文件n…

架构师狂掉1024根头发,总算搞定SSL通配证书

🔥架构师狂掉1024根头发,总算搞定SSL通配证书 经过许多个日日夜夜的持续开发(掉了1024根头发),总算搞定了v1.11.0版本,修复和解决了许多问题,也支持CDN和OSS证书的部署。 v1.11.0 版本新特性✅修复某些情况下无法识别主配置文件nginx.conf问题 ✅修复某些证书出现的签名…

SQL脚本中存在很多括号,无法直观进行匹配。

解决方案1:SSMS中找到前括号按下空格或tab,会自动匹配到对应的后括号,如下图。解决方案2:使用在线格式化工具进行格式化,该工具格式化功能更强大且会自动去除多余无意义的括号组。 https://tool.oschina.net/codeformat/sql 在线代码格式化 (oschina.net)

怎样的跨网软件,可以实现网间数据的安全收发?

网络隔离已是较为常见的网络安全保护措施,比如防火墙、网闸、VLAN,云桌面虚拟环境等方面进行隔离。像一些科技研发型企业,不仅仅是内外网隔离,甚至还划分办公网、研发网、测试网、生产网等,防止研发资料、设计资料等敏感信息泄漏。但隔离后仍存在文件数据需要进行流转的场…

Fatal error in launcher: Unable to create process using d:\python38\python3.exe ...

使用场景:本地主机安装好的python3.8 版本的运行环境,迁移道其他主机执行pip install -r .\requirements.txt 运行一下命令解决:python3 -m pip install watchdog

Nexpose v6.6.251 for Linux Windows - 漏洞扫描

Nexpose v6.6.251 for Linux & Windows - 漏洞扫描Nexpose v6.6.251 for Linux & Windows - 漏洞扫描 Rapid7 Vulnerability Management, Release May 08, 2024 请访问原文链接:Nexpose v6.6.251 for Linux & Windows - 漏洞扫描,查看最新版。原创作品,转载请保…

Prometheus+Alertmanager+webhook-dingtalk实现钉钉告警

文章目录 一、前提准备及规划 二、安装及启动 2.1 Prometheus安装启动 2.2 Node_export安装启动 2.3 Alertmanager安装启动 2.4 Webhook-dingtalk安装启动 三、配置及测试 3.1 Webhook-dingtalk配置钉钉webhook地址 3.2 Alertmanager配置钉钉告警 3.3 Prometheus集成Alertmanag…

mac本地搭建ollama

mac本地搭建ollama webUI *简介:ollama-webUI是一个开源项目,简化了安装部署过程,并能直接管理各种大型语言模型(LLM)。本文将介绍如何在你的macOS上安装Ollama服务并配合webUI调用api来完成聊天。 开源地址https://github.com/812781385/ollama-webUI.git,开源不易感谢s…