1:首先导入两个包,一个是Vue的包,一个是axios的包:

<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
<script src="https://unpkg.com/axios/dist/axios.min.js"></script>

2:文本框里面的数据使用双向绑定,这样我Vue里面发送axios请求的时候,可以直接使用文本框中的数据。同时,当我们点击搜索按钮的时候,触发搜索函数 SearchData。并且使用循环的方式,遍历搜索函数返回的列表,构造无序列表。.then会接收服务器发来的json数据,生成response对象,这个对象与js对象不同,而是再js对象的基础上进一步封装。 this.searchData = response.data.data.results,
vue---使用axios发送ajax请求_html

<div id='app'>
        <!-- 数据的双向绑定 -->
        <input v-model="inputData" type="text">
        <!-- 事件绑定 -->
        <input @click="SearchData" type="button" value="搜索" >
        <ul>
            <!-- 列表渲染 -->
            <li v-for='ser in searchData'>
                {{ser.title}}
            </li>
        </ul>
    </div>

3:解析SearchData方法:首先axios发送一个json请求,如果请求到数据就执行.then里面的方法,如果请求不到就执行.catch里面的方法,

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
    <script src="https://unpkg.com/axios/dist/axios.min.js"></script>
    <title>数据搜索</title>
</head>
<body>

    <div id='app'>
        <!-- 数据的双向绑定 -->
        <input v-model="inputData" type="text">
        <!-- 事件绑定 -->
        <input @click="SearchData" type="button" value="搜索" >
        <ul>
            <!-- 列表渲染 -->
            <li v-for='ser in searchData'>
                {{ser.title}}
            </li>
        </ul>
    </div>

    <script>
        new Vue({
            el: '#app',

            data: {
                inputData: '',
                searchData: ''
            },

            methods: {
                // 搜索方法
                SearchData: function () {
                    // 发送get请求 给 url服务器
                    // axios.get().then().catch()
                    axios.get('http://ttapi.research.itcast.cn/app/v1_0/search?q=' + this.inputData)
                        // 请求成功: response: 是一个js对象(json转换成js对象中的data)
                        .then((response) => {
                            console.log(typeof(response), response)
                            this.searchData = response.data.data.results
                        })
                        // 请求失败
                        .catch((error) => {
                            alert(error.data)
                        })
                }
            }
        })

    </script>

</body>
</html>