Vue se da cuenta de la comunicación en red con axios

Uno de los beneficios de vue es enfocarse solo en la capa de vista. Para la comunicación, puede enviar una solicitud ajax a través de la función de gancho montado antes de que se cree el objeto de instancia vue para obtener los datos json.
Envíe la solicitud a través de axios o jQuery.
Los datos solicitados están en el objeto de respuesta. Y vinculado al método de datos del objeto vue.

1. Datos a los que acceder

{
    
    
  "name": "bitqian",
  "age": 19,
  "address": {
    
    
    "school": "changsha",
    "home": "hunan"
  },
  "hobby": [
    {
    
    
      "book": "《麦田里的守望者》",
      "game": "《king of glory》"
    },{
    
    
      "language": ["java", "js", "python"],
      "blog": "https://blog.csdn.net/qq_44783283"
    }
  ]
}

2. Vue usa el paquete de terceros axios para enviar la solicitud

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>axios 请求</title>

    <script src="https://unpkg.com/axios/dist/axios.min.js"></script>
    <script src="../js/vue.js"></script>
</head>
<body>

    <div id="app">
        {
   
   { info.hobby[1].language[0] }}

        <a v-bind:href="info.hobby[1].blog">bitqian's blog</a>

        {
   
   { info.address.home }}
    </div>

    <script>
        let vue = new Vue({
     
     
            el: "#app",
            data() {
     
      // 接收数据并返回
                return {
     
      // 返回的格式要与响应的json格式对应
                    info: {
     
     
                        name: null,
                        address: {
     
     
                            school: null,
                            home: null
                        },
                        hobby: [
                            {
     
     
                                book: null,
                                game: null
                            },
                            {
     
     
                                language: [null, null, null],
                                blog: null
                            }
                        ]
                    }
                }
            },
            mounted() {
     
      // 钩子函数,在虚拟dom执行前,用于发Ajax请求
                // axios.get('../data.json').then(response=> console.log(response.data));
                axios.get('../data.json').then(response=>(this.info=response.data))
            }
        });
    </script>

</body>
</html>

Supongo que te gusta

Origin blog.csdn.net/qq_44783283/article/details/108720799
Recomendado
Clasificación