前端代码基本逻辑-vue3

前端vue建立过程

安装nodejs

官网下载安装,并且记住安装路径,记得配置系统变量Path

安装VUE/CLI

npm install -g @vue/cli --全局安装vue

使用VUE/CLI生成代码框架

vue create your-project-name --我的your-project-name为web

运行项目

cd your-project-name --我的your-project-name为web ​ npm run serve

前端布局过程

访问 Ant Design Vue 查询想要的布局效果

生成代码框架结构介绍--观察VUE前端代码结构

web使用命令行生成的前端文件夹名称
public共有的文件夹,通常存放公共(静态)资源(图片/声音)
picture自建,存放图片,src="/picture/xxx.png"
favicon.ico在...引用,浏览器标签使用的图片
index.html项目的入口,用于加载vue
src存放代码
assets资源目录,存放静态资源
logo.png示例图片
components组件,存放一些不需要改变的页面效果
TheHeader.vue自建,渲染页面的头部效果
TheFooter.vue自建,渲染页面的底部效果
router路由工具
index.ts用来将view里面的页面和路径映射
store状态管理目录,使用 Vuex 进行状态管理
index.ts状态管理配置文件
units工具类
tool.ts自建,主要功能(某元素判空,某元素判非空,复制元素)
view存放页面
HomeView.vue生成的,可根据需要改动
AboutView.vue生成的,可根据需要改动
App.vue根组件,作为 Vue 应用的入口点
package.json定义各个引入组件/依赖/脚本
package-load.json用来锁定组件/依赖/脚本版本号
.eslintrc.js可以用来忽略某些语法检查警告
.env.dev可以用来定义后端(开发)服务的地址前缀,如:VUE_APP_SERVER = http://127.0.0.1:10086
.env.prod可以用来定义后端(生产)服务的地址前缀,如:VUE_APP_SERVER = http://xxxxxxxxxxxx
路由部分
import { createRouter, createWebHistory, RouteRecordRaw } from 'vue-router'
import HomeView from '../views/HomeView.vue'
import AboutView from '../views/AboutView.vue'
​
const routes: Array<RouteRecordRaw> = [
//   {
//    path: '路径',
//    name: '名称',
//    component: 页面名称
//  },{path: '/',name: 'home',component: HomeView},{path: '/about',name: 'about',component: AboutView}
]
​
const router = createRouter({history: createWebHistory(process.env.BASE_URL),routes
})
​
export default router
以生成的HomeView为例分析具体标签作用
<template><!-- Vue 模板定义了组件的 HTML 结构 --><div><!-- 使用插值表达式显示响应式变量 demo 的 message 属性 --><h1>{{ demo.message }}</h1><!-- 其他页面元素可以继续添加,比如列表、按钮等 --></div>
</template>
​
<style scoped>
/* 这里的 CSS 只应用于当前组件,因为使用了 scoped 属性 */
/* .img-style 可以被模板中的元素通过 class 引用 */
.img-style {width: 50px; /* 设置图片样式的宽度为 50px */
}
</style>
​
<script lang="ts">
import { defineComponent, ref, onMounted } from 'vue';
import axios from 'axios'; // 导入 axios 用于发起 HTTP 请求
​
export default defineComponent({name: 'MyComponent', // 组件的名称,用于标识组件,方便在路由中使用setup() {// 定义一个响应式的 demo 对象,初始 message 为空字符串,这里的也可以不写如  const demo = ref();const demo = ref({ message: '' });
​// 定义一个方法,用于获取数据const way = () => {axios.get("/ebook/listAllDate").then((response) => {// 将获取的数据赋值给 demo 的 message 属性demo.value.message = response.data;});};
​// 定义响应式的变量 allBooks 用于存储书籍列表const allBooks = ref([]);// 定义响应式的变量 isWelcome 用于控制欢迎信息的显示const isWelcome = ref(false);
​// 使用 ref 创建响应式的 categoryId2 变量const categoryId2 = ref(null);
​// 定义一个带参数的方法,用于处理点击事件const handleClick = (value: any) => {axios.get("/ebook/listByCategoryId", { params: { categoryId: value.key } }).then((response) => {// 打印分类 IDconsole.log(value.key);// 将获取的数据赋值给 allBooksallBooks.value = response.data;});if (value.key === "welcome") {// 如果 key 是 "welcome",则显示欢迎信息isWelcome.value = true;} else {// 否则,更新 categoryId2 并隐藏欢迎信息categoryId2.value = value.key;isWelcome.value = false;way(); // 重新调用 way 方法以更新数据}};
​// 使用 onMounted 钩子在组件挂载后执行 way 方法onMounted(() => {way();});
​// 返回响应式状态和方法,使它们在模板中可用return {demo,way, // 定义组件的方法,可以被模板调用handleClick // 定义组件的事件处理函数};}
});
</script>

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

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

相关文章

STM32智能空气质量监测系统教程

目录 引言环境准备智能空气质量监测系统基础代码实现&#xff1a;实现智能空气质量监测系统 4.1 数据采集模块 4.2 数据处理与控制模块 4.3 通信与网络系统实现 4.4 用户界面与数据可视化应用场景&#xff1a;空气质量监测与优化问题解决方案与优化收尾与总结 1. 引言 智能空…

基于Java+SpringMvc+Vue技术的药品进销存仓库管理系统设计与实现系统(源码+LW+部署讲解)

注&#xff1a;每个学校每个老师对论文的格式要求不一样&#xff0c;故本论文只供参考&#xff0c;本论文页数达到60页以上&#xff0c;字数在6000及以上。 基于JavaSpringMvcVue技术的在线学习交流平台设计与实现 目录 第一章 绪论 1.1 研究背景 1.2 研究现状 1.3 研究内容…

卸载wps office的几种方法收录

​ 第一种方法: 1.打开【任务管理器】&#xff0c;找到相关程序&#xff0c;点击【结束任务】。任务管理器可以通过左下角搜索找到。 2.点击【开始】&#xff0d;【设置】&#xff0d;【应用】&#xff0d;下拉找到WPS应用&#xff0c;右键卸载&#xff0c;不保留软件配置 …

SQLite3封装类教程

SQLite3封装类教程 SQLite是一种轻量级的数据库&#xff0c;它不需要一个独立的服务器进程。SQLite数据库存储在一个单一的磁盘文件中&#xff0c;这使得它非常适合小型到中型的应用程序&#xff0c;例如移动应用、桌面应用和小型的Web应用。以下是使用Python封装SQLite3数据库…

Promise.all、any、race和allSettled的相同点与不同点与应用场景

在JavaScript中&#xff0c;Promise对象是一种处理异步操作的方式。它允许我们以一种更优雅的方式来处理异步代码&#xff0c;而不是使用回调函数。在Promise中&#xff0c;有一些方法可以帮助我们更好地管理多个Promise实例&#xff0c;这些方法包括Promise.all、Promise.any、…

tomcat为什么要自定义类加载器?

一个Tomcat中可以部署多个应用&#xff0c;而每个应用中都存在很多类&#xff0c;并且各个应用中的类是独立的&#xff0c;全类名是可以相同的。 比如一个订单系统中可能存在com.xushu.User类&#xff0c;一个库存系统中可能也存com.xushu.User类&#xff0c;一个Tomcat&#x…

Git学习1_Git安装(CSDN_20240714)

git下载 git下载官网如下&#xff1a; Git - Downloads (git-scm.com)https://git-scm.com/downloads 根据机器操作系统&#xff0c;下载对应的安装包 git安装 1. 点击安装程序&#xff0c;进入安装界面&#xff0c;如下图所示&#xff0c;点击next。 2. 选择安装路径&…

【laravel+Easyswoole】

使用 Laravel 和 Easyswoole 进行项目开发。 1. 环境准备 确保你的开发环境满足以下要求&#xff1a; PHP > 7.4ComposerGit安装并启用 Swoole 扩展&#xff08;可以通过 pecl install swoole 安装&#xff0c;然后添加 extensionswoole.so 到 php.ini&#xff09; 2. 创…

护网HW面试常问——组件中间件框架漏洞(包含流量特征)

apache&iis&nginx中间件解析漏洞 参考我之前的文章&#xff1a;护网HW面试—apache&iis&nginx中间件解析漏洞篇-CSDN博客 log4j2 漏洞原理&#xff1a; 该漏洞主要是由于日志在打印时当遇到${后&#xff0c;以:号作为分割&#xff0c;将表达式内容分割成两部…

Leetcode(经典题)day2

H指数 274. H 指数 - 力扣&#xff08;LeetCode&#xff09; 先对数组排序&#xff0c;然后从大的一头开始遍历&#xff0c;只要数组当前的数比现在的h指数大就给h指数1&#xff0c;直到数组当前的数比现在的h指数小的时候结束&#xff0c;这时h的值就是要返回的结果。 排序…

下载安装nodejs npm jarn笔记

下载安装nodejs npm jarn笔记 下载 Node.js安装Node.js修改node全局路径安装yarn 下载 Node.js 下载Node.js 安装Node.js 双击下载的下来的.msi文件运行并安装一直点next。安装路径可以是默认也可自定义。安装完成后Node.js和npm就安装完成了 命令行输入&#xff1a; nod…

LeetCode 面试题02.04.分割链表

LeetCode 面试题02.04.分割链表 C写法 思路&#x1f914;&#xff1a; ​ 将x分为两段&#xff0c;一段放小于x的值&#xff0c;另一段放大于x的值。开辟四个指针lesshead、lesstail、greaterhead、greatertail&#xff0c;head为哨兵位&#xff0c;防止链表为空时情况过于复杂…

推荐一款 uniapp Vaptcha 手势验证码插件

插件地址&#xff1a;VAPTCHA手势验证码 - DCloud 插件市场 具体使用方式可访问插件地址自行查阅

Vue从零到实战

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 非常期待和您一起在这个小…

WEB前端03-CSS3基础

CSS3基础 1.CSS基本概念 CSS是Cascading Style Sheets&#xff08;层叠样式表&#xff09;的缩写&#xff0c;它是一种对Web文档添加样式的简单机制&#xff0c;是一种表现HTML或XML等文件外观样式的计算机语言&#xff0c;是一种网页排版和布局设计的技术。 CSS的特点 纯C…

在HTML中使用JavaScript

在 HTML 中使用 JavaScript 有以下几种常见的方式&#xff1a; 一、内联脚本 &#xff08;一&#xff09;基本语法 内联脚本是将 JavaScript 代码直接嵌入到 HTML 文件的 <script> 标签内部。 <!DOCTYPE html> <html lang"en"> <head> <…

R语言安装devtools包失败过程总结

R语言安装devtools包时&#xff0c;遇到usethis包总是安装失败&#xff0c;现总结如下方法&#xff0c;亲测可有效 一、usethis包及cli包安装问题 首先&#xff0c;Install.packages("usethis")出现如下错误&#xff0c;定位到是这个cli包出现问题 载入需要的程辑包…

深层神经网络示例

输出层采用sigmoid&#xff0c;隐藏层采用tanh import numpy as np # 设置一些画图相关的参数 import matplotlib.pyplot as pltplt.rcParams[figure.figsize] (5.0, 4.0) plt.rcParams[image.interpolation] nearest plt.rcParams[image.cmap] gray from project_03.utils…

Oracle 19c和23ai都有哪些变化

Oracle版本新特性 Oracle 19c和Oracle 23ai&#xff0c;最为官方长期支持的两个版本&#xff0c;一个是目前生产环境使用最多的新版本&#xff08;笔者运维环境&#xff09;&#xff0c;一个是目前官方发布的最新版本数据库&#xff0c;两者在各自版本的功能和特性方面都有着比…

护网HW面试—apacheiisnginx中间件解析漏洞篇

参考&#xff1a;Apache/IIS/Nginx中间件解析漏洞_分别说出iis、apache、nginx解析漏洞原理-CSDN博客 一、apache 1、Apache HTTPD 换行解析漏洞 Apache HTTPD是一款HTTP服务器&#xff0c;它可以通过mod_php来运行PHP网页。 其2.4.0~2.4.29版本中存在一个解析漏洞。 在解…