Vue 3:玩一下web前端技术(六)
前言
本章内容为VUE请求后端技术与相关技术讨论。
上一篇文章地址:
Vue 3:玩一下web前端技术(五)_Lion King的博客-CSDN博客
下一篇文章地址:
Vue 3:玩一下web前端技术(七)_Lion King的博客-CSDN博客
一、请求后端技术
1、使用Mock.js模拟后端数据,用于内部调用
Mock.js 是一个前端开发模拟数据的库,可以帮助我们在前端开发过程中快速生成模拟数据。以下是使用 Mock.js 的步骤:
(1)安装
npm install mockjs --save-dev
(2)创建存放位置
(3)编写接口
/* eslint-disable */
import Mock from 'mockjs';
const apidata = Mock.mock({'list|1-10': [{'id|+1': 1,'name': '@cname','age|18-60': 1}]
});
export default apidata
这个语句,定义了模拟数据规则,即可以生成一个包含 1 到 10 个对象的数组,每个对象包含一个 id、一个随机的中文名字和一个年龄(18 到 60 之间)。
(4)在App.vue中引用模拟数据
<template><div><ul><li v-for="item in list" :key="item.id"><span>{{ item.name }}</span><span>{{ item.age }}</span></li></ul></div>
</template><script>
import apidata from '@/mock/apiMock.js';export default {data() {return {list:apidata.list}},
}</script><style></style>
这样就可以在网页上显示这些数据了:
2、将内部调用改成http调用
apiMock.js
/* eslint-disable */
import Mock from 'mockjs';
Mock.mock('/apidat/list', "get", {'list|1-10': [{'id|+1': 1,'name': '@cname','age|18-60': 1}]
});
3、实现http请求
(1)安装axios
npm install axios
(2)修改App.vue文件
<template><div><ul><li v-for="item in list" :key="item.id"><span>{{ item.name }}</span><span>{{ item.age }}</span></li></ul></div>
</template><script>
import './mock/apiMock'
import axios from 'axios'export default {data() {return {// list:[{"id":1, "name":"王婆", "age":100}],list:[],}},methods: {fetchData() {axios.get('/apidata/list').then(response => {this.list=response.data.listconsole.log(this.list)}).catch(error => {console.error(error)})}},mounted() {this.fetchData()
}
}</script><style></style>
这段代码使用axios库从一个API获取数据,但这个数据被导入的 ./mock/apiMock 拦截掉了。
在模板(`<template>`)部分,有一个`<ul>`元素,里面包含使用`v-for`指令遍历`list`数组中的每个元素,生成一个`<li>`元素。每个`<li>`元素包含两个`<span>`元素,分别展示`item.name`和`item.age`的值。
在`<script>`部分,首先导入了`./mock/apiMock`和axios库。然后,在`data()`方法中定义了一个`list`数组,初始值为空数组。在`methods`对象中定义了一个`fetchData()`方法,用于发送GET请求到`/apidata/list`接口,获取数据并将返回结果赋值给`list`数组。`mounted()`生命周期钩子调用了`fetchData()`方法,在组件被挂载后自动调用该方法。
这段代码的作用是通过发送GET请求到指定的接口,获取数据并在页面中展示。注意,导入./mock/apiMock ,axios的请求将先经过./mock/apiMock,如果请求路径等信息与Mock一致,请求将会直接获取Mock的数据。
二、相关技术讨论
1、js文件中的/* eslint-disable */有什么作用?
在JavaScript文件中,/* eslint-disable */是一个特殊的注释,用于禁用ESLint对该注释范围内代码的检查和报错。
ESLint是一种用于检查和识别JavaScript代码中潜在问题的工具。它可以发现语法错误、代码风格问题、潜在的bug等。通过在代码中添加/* eslint-disable */注释,您可以告诉ESLint跳过该注释范围内的代码检查。
这在某些情况下非常有用,例如:知道某段代码违反了ESLint规则,但有特殊的原因需要保留它时,就可以使用/* eslint-disable */注释来暂时禁用该代码的检查。
2、为什么赋值是为this.list=response.data.list
因为接口是一个字典,里面包裹了list这个key,因此访问列表时需要直接获取其属性。
3、'@/mock/apiMock.js'的@是什么意思?
@表示让当前文件所在目录为根目录,而不是以相对路径的方式(“./”、"../")查询
4、console.log(this.list)有什么用?
用处很大,他会将this.list直接打印到网页上的console中,方便调试 ,像这样:
相关文章:

Vue 3:玩一下web前端技术(六)
前言 本章内容为VUE请求后端技术与相关技术讨论。 上一篇文章地址: Vue 3:玩一下web前端技术(五)_Lion King的博客-CSDN博客 下一篇文章地址: Vue 3:玩一下web前端技术(七)_Lio…...

【点云处理教程】00计算机视觉的Open3D简介
一、说明 Open3D 是一个开源库,使开发人员能够处理 3D 数据。它提供了一组用于 3D 数据处理、可视化和机器学习任务的工具。该库支持各种数据格式,例如 .ply、.obj、.stl 和 .xyz,并允许用户创建自定义数据结构并在程序中访问它们。 Open3D 广…...

Windows10系统还原操作
哈喽,大家好,我是雷工! 复制了下虚拟机的Win10系统,但其中有一些软件,想实现类似手机的格式化出厂操作,下面记录Windows10系统的还原操作。 一、系统环境: 虚拟机内的Windows10,64…...
Django学习笔记-模板(Template)基础
使用模块可以很方便的执行一些数据操作,然后根据传入的数据直接在模板html文件中进行处理。 1.Django中的模板配置 Django的模板引擎在sttings.py文件中: TEMPLATES [{# 模板引擎,默认为django模板BACKEND: django.template.backends.dja…...

使用 NVM(Node Version Manager)管理 Node.js 版本
使用 NVM(Node Version Manager)管理 Node.js 版本 步骤一:安装 NVM NVM 是一个用于安装和管理不同版本的 Node.js 的工具。首先,你需要确保你的系统上已经安装了 NVM。可以通过以下命令检查 NVM 是否已经安装: nvm …...

(文章复现)梯级水光互补系统最大化可消纳电量期望短期优化调度模型matlab代码
参考文献: [1]罗彬,陈永灿,刘昭伟等.梯级水光互补系统最大化可消纳电量期望短期优化调度模型[J].电力系统自动化,2023,47(10):66-75. 1.基本原理 1.1 目标函数 考虑光伏出力的不确定性,以梯级水光互补系统的可消纳电量期望最大为目标,函数…...

tinkerCAD案例:24. Ruler - Measuring Lengths 标尺 -量勺
tinkerCAD案例:24. Ruler - Measuring Lengths 标尺 - 测量长度 Project Overview: 项目概况: A machine shop, where any idea can become a reality, can cost millions and million of dollars. Still, the most important tool in the shop is the…...

linux系统编程重点复习--线程同步
目录 复习目标: 1 互斥锁 1.1互斥锁的使用步骤 1.2 练习 1.3 死锁 2 读写锁 3 条件变量 4 信号量 复习目标: 熟练掌握互斥量的使用说出什么叫死锁以及解决方案熟练掌握读写锁的使用熟练掌握条件变量的使用理解条件变量实现的生产消费者模型理解…...

【Docker 学习笔记】Windows Docker Desktop 安装
文章目录 一、前言二、Windows Docker 安装1. 基于Hyper-V后端和Windows容器的安装2. 基于WSL2后端的安装(推荐)3. 安装Docker Desktop on Windows4. 启动并验证Docker Desktop 一、前言 Docker并非是一个通用的容器工具,它依赖于已存在并运…...

getInputStream has already been called for this request 问题记录
问题背景 HttpServletRequest.getReader() HttpServletRequest.getInputStream() 不能在过滤器中读取一次二进制流(字符流),又在另外一个Servlet中读取一次,即一个InputSteam(BufferedReader)对象在被读取完成后,将无…...
日撸代码300行:第60天(小结)
1、自己对于这个专栏的代码抄写也是断断续续,由于种种原因上次在第54天没坚持下来,这次继续希望能抄完。 2、现在代码的阅读和理解能力明显比刚开始抄代码的时候强了不少。感觉坚持到现在收获还是不小。现在基本上来说仔细想一下都能够理清楚代码的意思。…...

python和java哪个更有前景,python和java哪个更有前途
大家好,小编为大家解答python和java哪个好学,零基础的问题。很多人还不知道python和java哪个更容易入门,现在让我们一起来看看吧! 进入编程行业是很多人的梦想,现在越来越多的人都想要通过培训的方式进入IT行业中,但是…...

LeetCode_11. 盛最多水的容器
题目描述 11. 盛最多水的容器 - 力扣(LeetCode)https://leetcode.cn/problems/container-with-most-water/ 思路分析 这题就是典型的是一道很经典的面试题,最优的解法是双指针,但很多人在第一次看到这题的时候很难想到用双指针来…...
【Android】APP电量优化学习笔记
电量优化原因 电量优化在 Android 开发中非常重要,原因如下: 用户体验: 电池续航时间是用户在使用移动设备时非常关注的因素之一。通过进行电量优化,可以延长设备的电池寿命,使用户能够更长时间地使用设备而不必频繁…...

【微信小程序创作之路】- 小程序事件绑定、动态提示Toast、对话框 Modal
【微信小程序创作之路】- 小程序事件绑定、动态提示Toast、对话框 Modal 第六章 小程序事件绑定、动态提示Toast、对话框 Modal 文章目录 【微信小程序创作之路】- 小程序事件绑定、动态提示Toast、对话框 Modal前言一、事件是什么?二、小程序中常用事件三、事件传…...

MVC与MVVM模式的区别
一、MVC Model(模型):用于处理应用程序数据逻辑,负责在数据库中存取数据。处理数据的crud View(视图):处理数据显示的部分。通常视图是依据模型数据创建的。 Controller(控制器&…...

【数据结构与算法】归并排序
归并排序 归并排序(MERGE-SORT)是利用归并的思想实现的排序方法,该算法采用经典的分治(divide-and-conquer)策略(分治法将问题分(divide)成一些小的问题然后递归求解,而…...

OSG3.6.5 + VS2017前期准备及编译
OSG3.6.5 VS2017前期准备及编译 1、前期准备 1.1、osg稳定版本源码 Stable releases (openscenegraph.com) 1.2、osg依赖项 Dependencies (openscenegraph.com) 1.3、osg测试及演示数据 Data Resources (openscenegraph.com) 1.4、安装doxygen和Graphviz(用…...

IPv6 over IPv4隧道配置举例
配置IPv6 over IPv4手动隧道示例 组网需求 如图1所示,两台IPv6主机分别通过SwitchA和SwitchC与IPv4骨干网络连接,客户希望两台IPv6主机能通过IPv4骨干网互通。 图1 配置IPv6 over IPv4手动隧道组网图 配置思路 配置IPv6 over IPv4手动隧道的思路如下&…...

【GitOps系列】使用 ArgoCD 快速打造GitOps工作流
文章目录 ArgoCD简介ArgoCD安装访问ArgoCDGitOps 工作流总览创建 ArgoCD 应用检查 ArgoCD 同步状态访问应用 连接 GitOps 工作流体验 GitOps 工作流生产建议1)修改默认密码2)配置 Ingress 和 TLS3)使用 Webhook 触发 ArgoCD4)将源…...
KubeSphere 容器平台高可用:环境搭建与可视化操作指南
Linux_k8s篇 欢迎来到Linux的世界,看笔记好好学多敲多打,每个人都是大神! 题目:KubeSphere 容器平台高可用:环境搭建与可视化操作指南 版本号: 1.0,0 作者: 老王要学习 日期: 2025.06.05 适用环境: Ubuntu22 文档说…...

12.找到字符串中所有字母异位词
🧠 题目解析 题目描述: 给定两个字符串 s 和 p,找出 s 中所有 p 的字母异位词的起始索引。 返回的答案以数组形式表示。 字母异位词定义: 若两个字符串包含的字符种类和出现次数完全相同,顺序无所谓,则互为…...
【生成模型】视频生成论文调研
工作清单 上游应用方向:控制、速度、时长、高动态、多主体驱动 类型工作基础模型WAN / WAN-VACE / HunyuanVideo控制条件轨迹控制ATI~镜头控制ReCamMaster~多主体驱动Phantom~音频驱动Let Them Talk: Audio-Driven Multi-Person Conversational Video Generation速…...
Go语言多线程问题
打印零与奇偶数(leetcode 1116) 方法1:使用互斥锁和条件变量 package mainimport ("fmt""sync" )type ZeroEvenOdd struct {n intzeroMutex sync.MutexevenMutex sync.MutexoddMutex sync.Mutexcurrent int…...

Golang——6、指针和结构体
指针和结构体 1、指针1.1、指针地址和指针类型1.2、指针取值1.3、new和make 2、结构体2.1、type关键字的使用2.2、结构体的定义和初始化2.3、结构体方法和接收者2.4、给任意类型添加方法2.5、结构体的匿名字段2.6、嵌套结构体2.7、嵌套匿名结构体2.8、结构体的继承 3、结构体与…...

rknn toolkit2搭建和推理
安装Miniconda Miniconda - Anaconda Miniconda 选择一个 新的 版本 ,不用和RKNN的python版本保持一致 使用 ./xxx.sh进行安装 下面配置一下载源 # 清华大学源(最常用) conda config --add channels https://mirrors.tuna.tsinghua.edu.cn…...
【安全篇】金刚不坏之身:整合 Spring Security + JWT 实现无状态认证与授权
摘要 本文是《Spring Boot 实战派》系列的第四篇。我们将直面所有 Web 应用都无法回避的核心问题:安全。文章将详细阐述认证(Authentication) 与授权(Authorization的核心概念,对比传统 Session-Cookie 与现代 JWT(JS…...

ubuntu中安装conda的后遗症
缘由: 在编译rk3588的sdk时,遇到编译buildroot失败,提示如下: 提示缺失expect,但是实测相关工具是在的,如下显示: 然后查找借助各个ai工具,重新安装相关的工具,依然无解。 解决&am…...
【java】【服务器】线程上下文丢失 是指什么
目录 ■前言 ■正文开始 线程上下文的核心组成部分 为什么会出现上下文丢失? 直观示例说明 为什么上下文如此重要? 解决上下文丢失的关键 总结 ■如果我想在servlet中使用线程,代码应该如何实现 推荐方案:使用 ManagedE…...
精益数据分析(98/126):电商转化率优化与网站性能的底层逻辑
精益数据分析(98/126):电商转化率优化与网站性能的底层逻辑 在电子商务领域,转化率与网站性能是决定商业成败的核心指标。今天,我们将深入解析不同类型电商平台的转化率基准,探讨页面加载速度对用户行为的…...