我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Vite中自制mock服务器(不使用第三方服务)

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Vite中自制mock服务器(不使用第三方服务)

为什么要 mock

  • 后台接口还没完成,但前端要用到接口
  • 我想篡改后台接口的结果,测试一些分支逻辑

起步

本篇文章会使用到 swraxiosvite-plugin-mock,请自行安装

配置 vite进入 vite.config.ts,添加以下代码

import { defineConfig } from 'vite'
import react from '@vitejs/plugin-react'
import { viteMockServe } from 'vite-plugin-mock'

export default defineConfig(({ command }) => ({
  plugins: [
    react(),
    viteMockServe()
  ],
}))

创建 mock 数据

  • 创建 mock/test.ts 文件
mkdir mock/ && touch mock/test.ts
  • 添加 mock 数据
import { MockMethod } from 'vite-plugin-mock'
export default [
  {
    url: '/api/v1/me',
    method: 'get',
    response: () => {
      return {
        id: 1,
        name: 'Niki'
      }
    }
  }
] as MockMethod[]

使用 useSWR

在使用到的组件中用:

import useSWR from 'swr'
import axios from 'axios'

export const Home: React.FC = () => {
  const { data, error, isLoading } = useSWR('/api/v1/me', path => {
    return axios.get(path)
  })

  if (isLoading) {
    return <div>加载中...</div>
  }
  if (error) {
    return <div>加载失败</div>
  }

  return (
    <div>Hi, I am {data.name}!</div>
  )
}

判断是否在开发环境

vite.config.ts 里添加

import { defineConfig } from 'vite'
import react from '@vitejs/plugin-react'
import { viteMockServe } from 'vite-plugin-mock'

// https://vitejs.dev/config/
export default defineConfig(({ command }) => ({
+ define: {
+   isDev: command === 'serve' // 它会写在 window.isDev = true / false
+ },
  plugins: [
    react(),
    viteMockServe()
  ],
}))

封装请求

这里只是简单的封装一下 Axios

mkdir class="lazy" data-src/lib/ touch class="lazy" data-src/lib/ajax.tsx
import axios from 'axios'

axios.defaults.baseURL = isDev ? '/' : 'xxx' // 'xxx' 改为线上的 ip:端口
axios.defaults.headers.post['Content-Type'] = 'application/json'
axios.defaults.timeout = 10000

export const ajax = {
  get: (path: `/${string}`) => {
    return axios.get(path)
  }
}

最终使用

import useSWR from 'swr'
import { ajax } from '../lib/ajax'

export const Home: React.FC = () => {
  const { data, error, isLoading } = useSWR('/api/v1/me', path => {
    return ajax.get(path)
  })

  if (isLoading) {
    return <div>加载中...</div>
  }
  if (error) {
    return <div>加载失败</div>
  }

  return (
    <div>Hi, I am {data.name}!</div>
  )
}

到此这篇关于Vite中自制mock服务器(不使用第三方服务)的文章就介绍到这了,更多相关Vite mock服务器内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Vite中自制mock服务器(不使用第三方服务)

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Vite中自制mock服务器(不使用第三方服务)

本文主要介绍了Vite中自制mock服务器,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
2023-05-16

Vite中怎么自制mock服务器

本篇内容主要讲解“Vite中怎么自制mock服务器”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Vite中怎么自制mock服务器”吧!起步本篇文章会使用到 swr、axios、vite-plug
2023-07-06

Android使用第三方服务器Bmob实现发送短信验证码

调用Bmob第三方服务器实现短信验证的功能,大致思路如下: 随机产生6位数字,然后调用Bmob的请求短发函数发送者六位数到服务器,然后服务器给指定手机发送这6位验证码,然后感觉用户输入的数字进行判断,如果输入的和发送的相等,则验证成功。 第
2022-06-06

Win8系统自带搜索功能如何关闭以便使用第三方服务

有些系统功能虽然方便用户使用,但体验并不如第三方服务。就如Win8的搜索功能,就让不少用户嫌弃。如果大家不想用它,可以将它关闭。操作方法第一步、按下Win+R组合键,在运行命令输入框中输入“services.msc”
2022-06-04

解除阿里云盘禁用第三方服务器的方法

随着云计算技术的发展,许多用户将文件存储在阿里云盘等云存储平台上。然而,有时用户可能会遇到阿里云盘禁用第三方服务器的情况,这可能导致文件无法访问。那么,如何解除阿里云盘禁用第三方服务器呢?本文将详细介绍该过程。阿里云盘是阿里巴巴集团推出的云存储服务,用户可以将文件上传至阿里云盘,实现文件的在线存储和共享。然而,有
解除阿里云盘禁用第三方服务器的方法
2023-12-09

如何在家中自建云服务器使用手机控制

首先,我们需要购买一个云服务器。现在市场上有很多云服务器提供商,我们可以选择一家提供商来购买云服务器。我们可以从一些知名的云服务器提供商开始,比如AWS、Azure、GCP等等。在选择云服务器提供商时,我们需要考虑以下几个方面:云服务器的可靠性和稳定性。我们需要选择一家提供商的云服务器,因为一旦云服务器出现故障或者停电
如何在家中自建云服务器使用手机控制
2023-10-28

使用云服务器是不是有流量限制

使用云服务器可以在不中断业务的情况下实现快速增长。但是,流量限制是不可能完全避免的。如果您的业务需要高带宽和低延迟的网络连接,使用云服务器可以帮助您在实现业务增长的同时保持带宽和延迟的限制。例如,对于视频流服务,使用公共云服务器比自己购买服务器更合适,因为公共云服务器可以提供更强的带宽和更低的延迟。另外,使用云服务器还可以帮助您控制成本,因为您不必自行维护基础设施并管理您的资源。因此,请务必
2023-10-26

使用云服务器是不是有流量限制了

使用云服务器可以让你拥有更大的灵活性和资源利用率,但是并不意味着你就不必担心流量限制的问题了。云服务器是一种基于互联网的软件,因此它们通常是动态的,无论是连接到互联网还是连接到服务器本身都可以。在使用云服务器时,你可能会遭遇到流量限制的问题,但是在许多情况下,你仍然可以通过调整服务器配置来解决这个问题。在某些情况下,你可能需要更改你的应用程序,以避免流量限制的问题。你可能想要限制你的流量,或
2023-10-26

如何在家中自建云服务器使用

在开始自建云服务器之前,需要先了解什么是云服务器。云服务器是一种基于云计算技术的虚拟服务器,可以通过互联网进行访问和管理。它可以提供与传统物理服务器相同的功能,但具有更高的灵活性和可扩展性。在自建云服务器之前,需要选择适合的硬件。通常,一台服务器需要具备以下硬件要求:安装操作系统是自建云服务器的第一步。可以选择安装Linux或Windows操作系统。对于Linux操作系统,可以选择Ubuntu、C
2023-10-26

SAP C/4HANA Sales Cloud使用OData服务和第三方系统集成的示例分析

这篇文章将为大家详细讲解有关SAP C/4HANA Sales Cloud使用OData服务和第三方系统集成的示例分析,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。其中明确提到销售云包含SA
2023-06-04

使用云服务器是不是有流量限制了呢

使用云服务器可以在不中断网站服务的情况下提供更大的带宽和更快的加载速度,但使用不当也可能会导致访问量限制或限制带宽等情况。以下是几种可能出现的情况和解决方案:流量限制:可能是因为服务器使用了过多的连接或者使用了过慢的连接,为了确保网站服务可以正常运行,需要使用适当的控制措施来防止对网站的访问量过大。网络连接问题:可能是因为网络连接出现了问题,为了解决这个问题,需要检查网络连接是否稳定且快速。数据库问题:可能...
2023-10-27

使用云服务器是不是有流量限制了呀

使用云服务器可以让你免受单点故障问题的困扰,因为你的云服务器是动态的,并且能够快速扩展和缩容。当服务器出现故障时,不会导致服务不可用。相反,如果服务器出现故障,你可以很容易地进行故障转移,以确保你的服务继续运行。此外,使用云服务器还可以帮助减少数据丢失的可能性。如果一个数据中心的云服务器出现故障,你可以很容易地将其从其他数据中心复制到该服务器上,从而避免数据丢失。因此,使用云服务器并不会导致单点故障,而是可以...
2023-10-27

阿里云服务器第二硬盘的位置及使用方法

在阿里云服务器上,如果你需要添加一个额外的硬盘,可以使用第二硬盘。本文将详细解释第二硬盘的位置,并提供如何添加和使用第二硬盘的方法。正文:阿里云服务器提供了多种配置,其中一种是双硬盘配置。这种配置允许用户在同一台服务器上同时安装两个硬盘,每个硬盘都可以用来存储数据。那么,阿里云服务器的第二硬盘在哪里呢?答案是在服
阿里云服务器第二硬盘的位置及使用方法
2024-01-26

使用zerotier planet自建服务器客户端配置方法

1、客户端配置 客户端主要为Windows, Mac, Linux, Android 1.1 Windows 配置 1、在本页下载zerotier客户端 2、将 planet 文件覆盖粘贴到C:\ProgramData\ZeroTier\O
2023-08-19

手机如何控制腾讯云服务器使用方法

首先,让我们看看如何在手机上设置腾讯云服务器。首先,你需要在你的设备上下载腾讯云服务器的应用程序,并在应用程序的主界面中找到“腾讯云服务器”这个选项。这个选项会在应用程序的主界面中显示。接下来,点击“添加服务器”按钮。这会让你输入你腾讯云服务器的管理地址和端口号。你需要确保这些地址和端口号都是正确的,否则你的腾讯云服务
手机如何控制腾讯云服务器使用方法
2023-10-28

如何在家中自建云服务器使用教程

自建云服务器是指在家中使用自己的硬件设备和网络连接来搭建一个云服务器,以便在互联网上存储和访问数据。这种方式可以让你拥有更多的控制权和隐私保护,同时也可以节省成本。首先,你需要选择一台适合作为服务器的电脑或者单板电脑,例如树莓派。你需要确保这台设备有足够的处理能力和存储空间来运行云服务器软件。接下来,你需要选择一款适合自己的云服务器软件。常见的选择包括OwnCloud、NextCloud、Seaf
2023-10-26

如何在家中自建云服务器使用手机

在开始自建云服务器之前,需要先了解什么是云服务器。云服务器是一种基于云计算技术的虚拟服务器,可以通过互联网进行远程访问和管理。它可以提供与传统物理服务器相同的功能,但具有更高的灵活性和可扩展性。在自建云服务器之前,需要选择适合的硬件。一般来说,需要一台性能较好的电脑或服务器,至少需要4GB的内存和500GB的硬盘空间。此外,还需要一个稳定的网络连接,最好是有固定IP地址的宽带网络。安装云服务器软件
2023-10-26

编程热搜

目录