【急】axios请求到mock数据渲染不到视图层

一、代码目的

从fastmock上mock数据,通过axios发送get请求,将数据通过v-for语法渲染到列表上。

二、问题

数据请求过来,存放到数组中,控制台可以打印出来,但就是渲染不上去,不知道什么原因

Vue代码如下:

<template>
  <div>
    <ul>
      <li v-for="(item, index) in nameArr" :key="index">{{ item }}</li>
    </ul>
    {{ nameArr }}
  </div>
</template>

<script>
import axios from "axios";
export default {
  data() {
    return {
      baseUrl:
        "https://www.fastmock.site/mock/a2de7b065c65387ab6c6ab6b5fe95086/lsj/api/test",
      nameArr: [],
    };
  },
  mounted() {
    axios.get(this.baseUrl).then((res) => {
      for (var i = 0; i < 10; i++) {
        var myData = JSON.parse(JSON.stringify(res.data));
        this.nameArr[i] = myData.info[i].name;
        console.log(this.nameArr[i]);
      }
    });
  },
};
</script>

<style>
</style>

截图:
控制台明明都可以打印出来,但就是渲染不上,求解
image.png

阅读 2.6k
3 个回答
axios.get(this.baseUrl).then((res) => {
      for (var i = 0; i < 10; i++) {
        var myData = JSON.parse(JSON.stringify(res.data));
        this.$set(this.nameArr, i, myData.info[i].name);
        console.log(this.nameArr[i]);
      }
    });
新手上路,请多包涵

我觉得使用mock还是比较坑的,还不如直接起一个nodejs的http服务

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题