在vue-cli3中使用axios获取本地json操作

Vue CLI 3中使用axios获取本地JSON的操作步骤如下:

1. 安装依赖

在项目根目录下,使用以下命令安装axios和Vue CLI 3自带的webpack-dev-server:

npm install axios
npm install webpack-dev-server

2. 创建本地JSON文件

在项目的public文件夹下创建一个json文件,例如:

// public/my_data.json

{
  "name": "小明",
  "age": 18,
  "gender": "male"
}

3. 使用axios获取JSON数据

在Vue组件中,可以通过以下方式使用axios获取本地JSON数据:

<template>
  <div>
    <h1>{{ name }}</h1>
    <p>{{ age }}</p>
    <p>{{ gender }}</p>
  </div>
</template>

<script>
import axios from 'axios';

export default {
  data() {
    return {
      name: '',
      age: '',
      gender: ''
    }
  },

  mounted() {
    let vm = this;

    axios.get('/my_data.json')
      .then(function (response) {
        vm.name = response.data.name;
        vm.age = response.data.age;
        vm.gender = response.data.gender;
      })
      .catch(function (error) {
        console.log(error);
      });
  }
}
</script>

上述代码中,我们使用了axios的get方法,来获取public文件夹下的my_data.json文件。在请求成功后,将获取到的数据赋值给Vue实例的data属性,从而使页面中的数据渲染出来。

示例1:使用vue-cli3+axios获取远程JSON数据

有时,我们需要获取远程服务器上的JSON数据,在Vue CLI 3中,同样可以使用axios来完成该操作。例如:

<template>
  <div>
    <h1>{{ title }}</h1>
    <ul>
      <li v-for="item in itemList" :key="item.id">{{ item.name }}</li>
    </ul>
  </div>
</template>

<script>
import axios from 'axios';

export default {
  data() {
    return {
      title: '',
      itemList: []
    }
  },

  mounted() {
    let vm = this;

    axios.get('https://api.example.com/items')
      .then(function (response) {
        vm.title = response.data.title;
        vm.itemList = response.data.items;
      })
      .catch(function (error) {
        console.log(error);
      });
  }
}
</script>

上述代码中,我们使用了axios的get方法,来获取远程服务器上的JSON数据。在请求成功后,将获取到的数据赋值给Vue实例的data属性,从而使页面中的数据渲染出来。

示例2:使用async/await获取JSON数据

我们还可以使用ECMAScript 2017中引入的async/await语法,来简化axios请求。例如:

<template>
  <div>
    <h1>{{ title }}</h1>
    <ul>
      <li v-for="item in itemList" :key="item.id">{{ item.name }}</li>
    </ul>
  </div>
</template>

<script>
import axios from 'axios';

export default {
  data() {
    return {
      title: '',
      itemList: []
    }
  },

  async mounted() {
    let response = await axios.get('https://api.example.com/items');

    this.title = response.data.title;
    this.itemList = response.data.items;
  }
}
</script>

上述代码中,我们使用了async/await语法,将axios的请求转换为异步操作,并等待请求的响应。在响应成功后,直接将响应的数据赋值给Vue实例的data属性,从而使页面中的数据渲染出来。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:在vue-cli3中使用axios获取本地json操作 - Python技术站

(0)
上一篇 2023年5月28日
下一篇 2023年5月28日

相关文章

  • vue-next/runtime-core 源码阅读指南详解

    首先,需要明确阅读 vue-next/runtime-core 源码的目的是为了深入理解 Vue 3 的核心概念及其实现细节。这篇指南将带领读者了解该源码库的组织结构、核心模块的职责和交互关系,并给出示例代码帮助读者理解。以下是该指南的主要内容: 一、源码结构 入口文件:index.ts renderer 目录:处理组件的编译和渲染 reactivity 目…

    Vue 2023年5月27日
    00
  • vue自动添加浏览器兼容前后缀操作

    下面是关于vue自动添加浏览器兼容前后缀的完整攻略。 什么是浏览器兼容前后缀? 浏览器兼容前后缀是指在某些浏览器中,可能对某些 CSS 属性所使用的某些值不兼容,需要在其前后添加特定的前缀,即在CSS样式中写入以下内容: -moz- /*火狐*/ -webkit- /*chrome、safari*/ -ms- /*IE浏览器*/ -o- /*Opera浏览器…

    Vue 2023年5月28日
    00
  • Vue项目分环境打包的实现步骤

    实现Vue项目的环境分离,可以很好地满足开发、测试和生产环境的需求,同时也能提高代码的重用性和可维护性。以下是Vue项目分环境打包的实现步骤: 1. 创建环境变量配置文件 在Vue项目的根目录下,创建一个.env文件,用来存放全局的环境变量配置。同时在.env文件中定义两个变量:VUE_APP_API_URL和VUE_APP_DEBUG_MODE。其中,VU…

    Vue 2023年5月27日
    00
  • el-form-renderer使用教程

    El Form Renderer 使用教程 简介 el-form-renderer 是一款基于 ElementUI 组件库的渲染器,可以根据配置动态生成表单。本文将详细讲解如何使用 el-form-renderer。 安装 可以通过 npm 或 yarn 进行安装: npm install el-form-renderer –save yarn add e…

    Vue 2023年5月28日
    00
  • 利用Vue Native构建移动应用的全过程记录

    利用Vue Native构建移动应用的全过程记录 Vue Native 是一个利用 Vue.js 和 React Native 建立移动应用程序的框架,使开发人员拥有更好的体验和开发效率。 准备工作 安装 Node.js 和 npm 安装 Vue CLI 和 React Native 命令行工具 (CLI) 安装 Expo 命令行工具 编辑器:推荐使用 Vi…

    Vue 2023年5月27日
    00
  • 详解关于Vue单元测试的几个坑

    我来详细讲解一下“详解关于Vue单元测试的几个坑”的完整攻略。 1. 前置条件 在进行Vue的单元测试之前,需要安装Vue Test Utils和Jest两个库,这两个库用于进行Vue单元测试的框架和运行环境。 安装Vue Test Utils和Jest: npm install –save-dev @vue/test-utils jest 2.安装Vue…

    Vue 2023年5月29日
    00
  • 第一次在Vue中完整使用AJAX请求和axios.js的实战记录

    下面是“第一次在Vue中完整使用AJAX请求和axios.js的实战记录”的完整攻略: 简介 本攻略旨在帮助Vue初学者了解如何在Vue项目中使用AJAX请求和axios.js进行数据交互,涉及到AJAX的基本概念和使用方法,以及axios.js的安装和使用。 AJAX基本概念 AJAX全称为Asynchronous JavaScript and XML,即…

    Vue 2023年5月29日
    00
  • Vue3 diff算法的简单解刨

    Vue3 diff算法的简单解剖 什么是diff算法 Vue框架是一个基于MVVM模式的前端框架,其中最重要的就是数据驱动视图更新。而Vue3框架中采用的更新算法就是diff算法。 diff算法是比较前一次虚拟DOM(Virtual DOM)树和当前的虚拟DOM树的变化,通过计算出最小的变化来更新页面视图。其核心原理为比较新旧虚拟DOM树的差异。 Vue3 …

    Vue 2023年5月27日
    00
合作推广
合作推广
分享本页
返回顶部