文章详情

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

请输入下面的图形验证码

提交验证

短信预约提醒成功

vue本地模拟服务器请求mock数据的方法详解

2024-04-02 19:55

关注

原因

场景

方法

vue cli3 的项目,打生产包的时候,public文件夹里面的文件,是不经webpack编译,直接复制到 publicPath设置的目录下的,开发时用到的json数据、图片等资源文件,可以放到 public目录里面。

mock资源

如下,准备了一张图片和一个json文件

table.json, cat.png

|-- src
|-- public
    |-- data
        |-- table.json
    |-- images
        |-- cat.png

配置

涉及的文件如下(具体参考代码):

|-- src
    |-- .env.development    // 开发环境配置,主要是配置服务器地址
    |-- .env.production        // 生产环境配置,主要是配置服务器地址
    |-- settings.js    // 一些全局配置,把publicPath的值设置在这里
    |-- utils
        |-- mock-request.js    // axios请求封装
    |-- api
        |-- table.js    // 获取table.json数据的请求封装
    |-- views
        |-- mockDataTest    // 用来显示请求结果
            |-- index.vue
            |-- index.scss
            |-- index.js
|-- public
    |-- data
        |-- table.json
    |-- images
        |-- cat.png
|-- vue.config.js    

vue.config.js + settings.js

先配置下访问公共路径,例如,想在访问的时候地址加上dist路径,可以在vue.config.js如下配置

module.exports = {
  publicPath: process.env.NODE_ENV === 'production' ? '/' : '/dist',
}

为方便调用,记得这里要和settings.js里面的publicPath同步修改。

.env.development + .env.production

这里主要是配置下部署的服务器的地址,例如,开发时,本地访问的地址是http://localhost:8081 定义一个参数,存放此地址,名字随意

VUE_APP_MOCK_URL = 'http://localhost:8081/'

mock-request.js

这里主要是配置下axios的baseURL,直接读取.env.development or .env.production里面配置的服务器地址就行,例如,

baseURL: process.env.VUE_APP_MOCK_URL

这里会自动根据命令,读取不同环境配置的服务器地址

table.js

这里是服务器请求相关的,.json文件的数据怎么请求获取,如下所示

import mrequest from '@/utils/mock-request'
import defaultSettings from '@/settings'
const { publicPath } = defaultSettings

export const tableData = () => {
  return mrequest({
    url: publicPath + `/data/table.json`,
    method: 'get'
  })
}

mockDataTest

这里主要是演示效果

具体看代码了

效果如下

代码

代码,参考

总结

简单的实现了不用依赖后台接口的mock数据请求。数据都存放在.json文件里面。这些放在public文件夹的文件,都不参与编译,方便修改和替换。打包生产后,可以直接放静态服务器运行。

以上,因为一个演示平台需要,数据、图片、视频都有频繁修改替换的可能,所以采用如此方式实现。

到此这篇关于vue本地模拟服务器请求mock数据的文章就介绍到这了,更多相关vue本地模拟服务器请求mock内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

阅读原文内容投诉

免责声明:

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

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

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-服务器
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯